2ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

ACCESS総合相談所 その18 【桐にしとけ】

1 :名無しさん@そうだ選挙にいこう:2007/12/29(土) 08:52:35
ACCESSに関する質問はこちらへ!


▼━ 質問のしかた ━━━━━━━━━━━━━━━━━━━━
★ OS、ACCESSのバージョンを明記してください。
★ 質問内容は具体的に書いてください。
  ・何がしたいのか
  ・どんな処理を試したか
  ・動作状況など駄目な理由
  テーブル/フォームの構成、クエリ、VBAの内容など差し支えない
 範囲で詳しく書くと、早く回答が得られるかもしれません。
  図解があれば尚良し。
  聞き返さなくても詳細が把握できる質問が望ましいです。
★ 事前にヘルプ・Google等で調べられる範囲は調べてください。
  大概の疑問は検索することで解決します。
★ アドバイスを貰ったら、必ず経過・結果の報告をして下さい。
  ギブアンドテイクで情報を共有しましょう。

▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【 システム環境  . 】 Windows**, Access**
【 VBAが使えるか .】 はい・いいえ
【 VBAでの回答  】 可・否
【 検索キーワード 】 Googleやヘルプでの検索キーワード

前スレ
ACCESS総合相談所 その17 【桐にしとけ】
http://pc11.2ch.net/test/read.cgi/bsoft/1175943813/

2 :名無しさん@そうだ選挙にいこう:2007/12/29(土) 08:54:08
ACCESS2000総合相談所
http://pc.2ch.net/bsoft/kako/965/965614164.html
ACCESS総合相談所 その2
http://pc.2ch.net/bsoft/kako/1007/10079/1007987001.html
ACCESS総合相談所 その3
http://pc.2ch.net/bsoft/kako/1019/10190/1019087338.html
ACCESS総合相談所 その4
http://pc.2ch.net/bsoft/kako/1027/10274/1027491281.html
ACCESS総合相談所 その5
http://pc.2ch.net/bsoft/kako/1033/10331/1033182163.html
ACCESS総合相談所 その6
http://pc2.2ch.net/bsoft/kako/1037/10378/1037856185.html
ACCESS総合相談所 その7
http://pc2.2ch.net/bsoft/kako/1043/10439/1043996834.html
ACCESS総合相談所 その8(消息不明です)
http://pc2.2ch.net/bsoft/kako/1051/10516/1051630268.html
ACCESS総合相談所 その9(消息不明です)
http://pc2.2ch.net/test/read.cgi/bsoft/1061828549
ACCESS総合相談所 その10
http://pc5.2ch.net/test/read.cgi/bsoft/1075378966/
ACCESS総合相談所 その11
http://pc5.2ch.net/test/read.cgi/bsoft/1089812359/
ACCESS総合相談所 その12
http://pc8.2ch.net/test/read.cgi/bsoft/1106963038/
ACCESS総合相談所 その13 【桐にしとけ】
http://pc8.2ch.net/test/read.cgi/bsoft/1121055646/
ACCESS総合相談所 その14 【桐にしとけ】
http://pc8.2ch.net/test/read.cgi/bsoft/1128486351/
ACCESS総合相談所 その15
http://pc8.2ch.net/test/read.cgi/bsoft/1142586697/
ACCESS総合相談所 その16 【桐にしとけ】
http://pc11.2ch.net/test/read.cgi/bsoft/1157195290/

3 :名無しさん@そうだ選挙にいこう:2007/12/29(土) 08:55:57
・関連スレ
データベース板
【Access】アクセスは最強のデータベース!
http://pc11.2ch.net/test/read.cgi/db/1166295459/
プログラム板
VBプログラマ質問スレ(6.0以前) Part51 ※Office, Access 固有の質問はスレ違いにつき注意!
http://pc11.2ch.net/test/read.cgi/tech/1169949451/

4 :名無しさん@そうだ選挙にいこう:2007/12/29(土) 13:06:55
>>1
乙カレー

5 :名無しさん@そうだ選挙にいこう:2007/12/29(土) 14:11:45
すみませんが教えてください。
複数のフィールドの値を条件にテーブル結合は出来ますか?
テーブル1
フィールド1 フィールド2 
11111  あああああ  
33333  いいいいい  
11111  いいいいい   
33333  あああああ   
11111  あああああ
11111  いいいいい

テーブル2
フィールド1 フィールド2 フィールド3
22222  あああああ  12788
33333  いいいいい   7878
11111  あああああ   8888
33333  あああああ   8880
11111  いいいいい   7888


テーブル1が11111とあああああならテーブル2のフィールド3を持ってくるのです。
テーブル1テーブル2ともに主キーは別のフィールドです。
フィールド1とフィールド2が合わさって一つしかない
名前になるのです。
フィールド1とフィールド2を結合するのかな?と思うのですが・・・。 

6 :名無しさん@そうだ選挙にいこう:2007/12/29(土) 14:17:13
まあ、これも桐を使えば一撃で出来るんだが、
Accessの回答をどうぞ


7 :名無しさん@そうだ選挙にいこう:2007/12/29(土) 14:21:33
>>5
一度自分で試してから出直せ。


8 :名無しさん@そうだ選挙にいこう:2007/12/29(土) 15:16:02
まあ、ここでの質問の大部分は桐でスパット解決できる訳で、、アプリ開発時間も1/5くらいな訳で、、

エクゼプティブは桐でさっさと仕事済ませて、空いた時間はホテルのプールでリフレッシュ
貧乏人はAccessで必死に頑張ると

9 :名無しさん@そうだ選挙にいこう:2007/12/29(土) 15:21:18
もしかして: エグゼクティブ

10 :名無しさん@そうだ選挙にいこう:2007/12/29(土) 15:50:13
>> 前スレ963

'インポート先のテーブルT1は作成済みの前提
'アーリーバインディングにしたい場合は好きに修正汁
'Scripting.Runtime の定数を使用したい場合も好きに修正汁
Sub ImportShit()

Dim rs As Object 'DAO.Recordset
Dim reader As Object 'Scripting.TextStream
Dim tmp As Variant

  ' レコードセットをオープン
  Set rs = CurrentDb.OpenRecordset("T1")
  ' テキストストリームをオープン
  Set reader = CreateObject("Scripting.FileSystemObject"). _
         OpenTextFile("C:\theShit.txt", 1, 0, -1)

  ' ファイルの終端までループしてレコード追加
  Do Until reader.AtEndOfLine
    tmp = Split(reader.ReadLine, vbTab)
    If tmp(0) = "フィールドA" Then
      If rs.EditMode = 2 Then rs.Update ' レコードバッファを保存(dbEditAdd=2)
      rs.AddNew
    End If
    rs.Collect(tmp(0)) = tmp(1)
  Loop
  If rs.EditMode = 2 Then rs.Update ' レコードバッファを保存(dbEditAdd=2)

End Sub

11 :名無しさん@そうだ選挙にいこう:2007/12/29(土) 16:24:53
パチパチ

 おまいらも拍手してやれ

12 :10:2007/12/29(土) 16:53:37
>10 のコメントだけ間違った。
本文に書いてあるとおり、FileSystemObjectだす。

誤:Dim reader As Object 'Scripting.TextStream
正:Dim reader As Object 'Scripting.FileSystemObject

13 :10:2007/12/29(土) 16:56:46
…と思ったら、間違ってなかったわ。

こんな短いコードでも、後で見ると自分でも読み違う。orz
精進精進。

14 :名無しさん@そうだ選挙にいこう:2007/12/29(土) 21:42:55
>>13
桐にしとけ

15 :名無しさん@そうだ選挙にいこう:2007/12/30(日) 01:34:45
フィールドも自動で作ってくれよ

16 :10:2007/12/30(日) 03:42:25
>>15
もう飽きたから任せた。よろ。

17 :名無しさん@そうだ選挙にいこう:2007/12/30(日) 11:02:17
Tab形式のCSVへの展開くらい、WSHで作れよ
そして、ここに書き込め

18 :名無しさん@そうだ選挙にいこう:2007/12/30(日) 12:37:07
>17 にムリなのは、よくわかった。

19 :名無しさん@そうだ選挙にいこう:2007/12/30(日) 12:42:04
>>16
精進精進。

20 :名無しさん@そうだ選挙にいこう:2007/12/30(日) 13:15:26
ワロスワロス

21 :名無しさん@そうだ選挙にいこう:2007/12/30(日) 14:41:27
オレオレ

22 :名無しさん@そうだ選挙にいこう:2008/01/02(水) 11:56:49
ACCESS2007のVBAなんですが
フォーム上で右クリックで、テキストフィルタ>
指定の値に等しい と同じことをする
VBAを教えて下さい


23 :名無しさん@そうだ選挙にいこう:2008/01/04(金) 15:05:37
質問なんですが、レポートで精算書を作りたいんですが、
手数料が件数100件未満の場合は180円で、それ以上の場合は170円になるんです。
そういう場合、レポートのコントロールソースはどう書けばいいんでしょうか。


24 :名無しさん@そうだ選挙にいこう:2008/01/04(金) 17:34:57
=IIf(Count(*)<100,180,170)

グループ化してグループヘッダかグループフッタにこう書いとけ

25 :名無しさん@そうだ選挙にいこう:2008/01/04(金) 22:23:35
DoCmd.ApplyFilter "", "[コントロール1] like '" & "*" & Format$(コントロール2) & "*'"
というコードがあります。教科書には
コントロール1 Like *コントロール2*
で検索可能と書いてあるのに、なんで&や"がこんなにたくさん必要なんですか?

26 :名無しさん@そうだ選挙にいこう:2008/01/05(土) 00:42:41
無意味な & もあるな。

27 :名無しさん@そうだ選挙にいこう:2008/01/05(土) 01:47:48
keydownイベントでshift+Spaceだけが機能しないんですけど、既出?
それともおいらの書き方がわるいのかな?
If KeyCode = vbKeySpace And Shift = 0 Then DoCmd.GoToRecord , , acNext 'spaceで次レコードへ
If KeyCode = vbKeySpace And Shift = 1 Then DoCmd.GoToRecord , , acPrevious 'shift+spaceで前レコードへ

shift=2(Ctrl+Space)、shift=4(Alt+Space)はちゃんと機能しました。Spaceで進んで、shift+Spaceで戻りたいのに出来ません。
どうか、ヒントを下さい。

28 :名無しさん@そうだ選挙にいこう:2008/01/05(土) 02:07:47
>>27
自己レスします。
フォームのプロパティーで当該コントロールのIMEの設定をオフにしたら動きました。
お騒がせしました。
IMEがオンになっていると、なぜかshift+Spaceが使えないんですね。
そのほかにも、アルファベットでの移動(viのようなやつ)が効きませんでした。
でも、IMEをオフに設定したら動きました。

29 :名無しさん@そうだ選挙にいこう:2008/01/06(日) 20:24:06
すいません、Accessのテーブルリンクの切り替えについて質問させてください。

テストA環境とテストB環境など、環境ごとに同じテーブル名があるため、
Accessのマクロにて以下のテーブルリンクを切り替えるものを作りました。
@DeleteObjectでリンクテーブルを削除
ATransferDatabaseでリンクを再度作成

その結果、マクロを実行するとAの段階でテーブルによっては
「3146:ODBC--呼び出しが失敗しました。
 [Oracle][SQL]SQLデータ型が許容範囲外です」
となります。

手動でリンク付けをやってみたのですが、同じエラーとなりました。

なにが原因と考えられるでしょうか。
またテーブルはそのままにして、接続先だけを書き換える方法はありますでしょうか。

いろいろすいませんがよろしくお願いします。


30 :名無しさん@そうだ選挙にいこう:2008/01/07(月) 02:07:29
WinXP、Access2000です。アクセスを勉強しはじめて1週間で右も左もわかりません。
VBAもわからないし、何をキーワードに検索したらいいかも 正直わかりません。
超基本なうえに質問もおぼつかなくお叱りを受けそうですが、
大変困っているため背に腹はかえられず、失礼ながら質問させていただきます。

***

テーブル1
顧客ID(主キー、オートナンバー)、氏名、電話番号

テーブル2
問い合わせID(主キー、オートナンバー)、顧客ID(テーブル1とリレーション)、日時、問い合わせ内容

フォーム1(レコードソース:テーブル1)
顧客ID、氏名、電話番号

フォーム2
問い合わせID、顧客ID、日時、問い合わせ内容

フォーム1の中に「入力」ボタンを設置し、それをを押すとテーブル1の顧客IDを持って
フォーム2が入力モードで開く(問い合わせIDのみオートナンバーで採番される)
ようにするにはどうしたらよいのでしょうか。
「入力」クリック時にフォーム2を追加モードで開くようにマクロで設定したのですが、顧客IDが空白です。

31 :名無しさん@そうだ選挙にいこう:2008/01/08(火) 10:56:56
>>29
ADOXとVBAで処理した方が良いんでない?
リンク先書き換えだけなら、削除しなくて良いから。

で、エラーだけれども、多分、
Oracle - MDBのリンクを行う際に、
MDB側にマッピングされるデータ型に
収まりきらない値がテーブルに設定されているとかじゃないか?


32 :名無しさん@そうだ選挙にいこう:2008/01/08(火) 21:36:43
【 システム環境  . 】 WindowsXP, Access2007
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 否
【 検索キーワード 】 ACCESS フォームフィルタ

誕生日のフィールドを用いてフォームフィルタの練習をしています。
ちなみに、『30時間でマスターAccess2007』という本をさっき買ってきて、
それで勉強しています。

練習問題の中で、『1975年生まれの選手のレコードを連続して検索しなさい』というのがあります。それをやってみたのですが、うまくいきません。(データは付録のCDromに入ってます)

「詳細設定」→「フォームフィルター」とクリックし、
「生年月日フィールド」で#1975/01/01#-#1975/12/31#としました。
しかしうまくいきませんでした。
他にも、#1975/*/*#とか、#1975/##/###とかやってみましたがダメでした。

どうすれば、1975年生まれの選手を連続検索することができるでしょうか?
ご指導のほど、よろしくお願い申し上げます。


33 :名無しさん@そうだ選挙にいこう:2008/01/09(水) 00:40:21
>>32

日付ってLike使えなかったっけか。

Like "1975*"

あたりでいけるんじゃね?

34 :名無しさん@そうだ選挙にいこう:2008/01/09(水) 01:10:33
手元にAccessないから確かめられないけど仮にできたとしても
ロケール依存になりそうな気が・・・。

生年月日フィールドが日付時刻型で時刻が全部00:00:00って前提なら
Between #1975/01/01# And #1975/12/31#

たまに時刻00:00:00以外のゴミデータが紛れ込む可能性まで考慮すると
>=#1975/01/01# And <#1976/01/01#


35 :>>32:2008/01/09(水) 01:35:47
>>33-34

お二人ともどうもありがとうございました。
明日、会社に行って試してみます。
本当にありがとうございました。


36 :名無しさん@そうだ選挙にいこう:2008/01/09(水) 16:33:35
質問です。
月別の帳票を作成したんですけれど、祝日の色を変更することはできるのでしょうか。(土日はできました。)

37 :名無しさん@そうだ選挙にいこう:2008/01/09(水) 19:40:13
ACCESS2007のプリンタのレポートのページ設定で
その他のプリンタに変更した設定が保存されない
http://support.microsoft.com/kb/943671/ja

のバグは対応策はありませんか?
買う前から判っていたら、ACCESS2007で開発しなかったのになあ(汗

38 :名無しさん@そうだ選挙にいこう:2008/01/10(木) 02:33:25
抽象的な質問ですみません。
あるファンクションプロシジャーを呼ぶのに、
keydownイベントで呼び出すのと、マクロのautokeyのプロシジャーの実行で呼び出すのとで、動作後のカレントレコードが異なります。
keydownイベントだと一番前のレコードがカレントレコードになり、マクロだと当初のレコードがそのままカレントレコードのままです。
なんで、全く同じプロシジャーを呼び出しているのに、VBAで呼び出したときと、マクロで呼び出したときで変るのでしょうか?
抽象的ですみません。

39 :名無しさん@そうだ選挙にいこう:2008/01/10(木) 15:25:50
当り前だ。
そういうの理解が面倒なら桐にしとけば楽。

40 :>>32:2008/01/10(木) 19:29:54
>>32です。
>>33様、>>34様、ご指導いただいたとおりやったら見事できました。
本当にありがとうございました。
おかげでとても助かりました。

41 :38:2008/01/11(金) 03:28:45
>>39
当たり前なんですか?
ヒントでもいただけたら。。。
キーワードがあれば検索しますので。。。

42 :名無しさん@そうだ選挙にいこう:2008/01/11(金) 08:26:06
【 システム環境  . 】 WindowsXP SP2, Access2000
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 否
【 検索キーワード 】 インポートされない

Access2000で、あるCSVをインポートしたところ、数字の項目正しく入らない
事象が起きました。
(CSVでは"665554368"という数字が、Accessでは"665554340"になってしまいます。)
金額に該当する項目なので、正しく入らないと困るのですが、原因は何が
考えられ、どうすれば解決するでしょうか?

以下の方法を試しましたが、いずれもダメでした。
・該当の値が入るフィールドのデータ型を以下のものにする。
 →通貨型、単精度浮動小数点型、倍精度浮動小数点型
 (いずれもダメです)

・CSVの区切り文字を別の文字に置換する。
 →"|"だったものを、","区切りにしましたがだめでした。

・CSVをExcel2003形式で保存し、Excelをインポートする。
 →直接CSVをインポートしたときと同じ数字になりました。



43 :名無しさん@そうだ選挙にいこう:2008/01/11(金) 16:32:23
これ飲んで男になれよ
http://www.urllite.com/x.php?1sh

44 :名無しさん@そうだ選挙にいこう:2008/01/11(金) 16:39:13
フィールドのデータ型を文字型にしたらどうだろう?

45 :名無しさん@そうだ選挙にいこう:2008/01/11(金) 18:46:15
>>42

マルチかよ。

46 :名無しさん@そうだ選挙にいこう:2008/01/12(土) 13:00:01
質問させて下さい

【 システム環境  . 】 Windowsxp, Access2003
【質問内容】 メニューバー(ファイル,編集,・・・)が表示されない。何か操作を間違えて消えてしまったのでしょうか?
        修復setupをやってみましたが変化ありません。
        officeのアンインストール、再インストールは影響が大きすぎるのでまだやっていません。
        よきお知恵を下されば幸いです。

47 :名無しさん@そうだ選挙にいこう:2008/01/12(土) 13:25:26
>>46
[Shift] を押しながら起動してみて

48 :名無しさん@そうだ選挙にいこう:2008/01/14(月) 12:44:35
windowsXP access2002
顧客名簿を作って、他のPCにmdbファイルを移したところ、
住所の県以下を取得する「市区町村番地:Mid([住所],InStr([住所],"県")+1)

49 :48:2008/01/14(月) 12:53:23
途中で、書き込んでしまった・・・。
つづき

というのをクエリに書いているのですが、
作ったPCでは、正常に新しいフィールドができるのですが、
移したPCでは、「式に未定義関数'MID'があります。」と出てエラーになります。
見直しても、なんら変わらないのにエラーがでます。
移したPCもwindowsXP access2002です。
何が原因かわかりません。どなたか、アドバイスをよろしくお願いします。


50 :名無しさん@そうだ選挙にいこう:2008/01/14(月) 12:56:39
>>48
参照設定をチェックしてみて

51 :名無しさん@そうだ選挙にいこう:2008/01/14(月) 13:06:36
>>50
できました。
ありがとうございました。

52 :名無しさん@そうだ選挙にいこう:2008/01/14(月) 14:33:52
いま、巨大なフォームAの上にフォームB〜Eが乗っているフォームを使っています。コマンドボタンでフォームF〜が呼び出せますが、これはフロート状態になります。
フォームA〜Eつまりフロートではないフォームにフォーカスがあるときはアクセスキーがいつでも使えます。
つまり、フォームBにフォーカスがあっても、フォームC用のアクセスキーが反応します。フロートのにフォーカスがあるときは反応しません。
このアクセスキーと同じ事をkeydownでやろうとすると、keydownをフォームA〜Eに記述しないといけなくなります。
アクセスキーの内容を一発で書けるコードはありますでしょうか?

53 :46:2008/01/15(火) 07:50:21
>>47
遅くなりましたがありがとうございました。
メニューバーを消すモジュール組み込んであるmdbを走らせてしまったようです。
そのときは右クリックも効きませんでした。なんとか解決できました。

54 :名無しさん@そうだ選挙にいこう:2008/01/16(水) 18:46:09
今作ってるんですけど、
キーをオートナンバーにすると1から始まります。

取引先に請求書出すのに1とか2とか使うと
小さい会社だと思われるので、せめて100000からと6桁の番号からにしたいんです。

なんかいい方法ないでしょうか?

55 :名無しさん@そうだ選挙にいこう:2008/01/16(水) 18:53:16
Windows PowerShell を使用して Microsoft Access データベースからレコードを取得する方法はありますか。


56 :名無しさん@そうだ選挙にいこう:2008/01/16(水) 21:59:02
>>55
ttp://www.microsoft.com/japan/technet/scriptcenter/resources/qanda/oct06/hey1002.mspx

どうやら最終回みたいだなw

57 :名無しさん@そうだ選挙にいこう:2008/01/16(水) 23:39:06
>>54
+10万でも+20万でも好きなだけ水増しした数字をレポートに印字しとけ

58 :名無しさん@そうだ選挙にいこう:2008/01/18(金) 17:42:07
本当に初心者の質問です。

excelの表が、Accessにインポートできません。
ファイル→外部のデータの取り込み→インポートで
ファイルを指定してインポートしても無反応。

ちなみに、
@フィールド名、データ型、フィールドサイズは両方一致してます
A他の点でも問題なさそうです。

これは何でなんでしょうか?
ちなみに、エクセルの表は、参考書が指定するHPからダウンロードしました。
誰か助けて・・・・

59 :名無しさん@そうだ選挙にいこう:2008/01/18(金) 17:47:54
>>58です。
ちなみにOSはwindows XP
ソフトはaccess2003

自分で作成したテーブルに、HPでダウンロードしたexcelのデータを
インポートしたいのです。
インポートすると、ワークシートインポートウィザードが
出てくるそうなのですが、
無反応なのです。 上にも書いたとおり、フィールド名他の要素は
確認したら一致していました。

どうぞよろしくお願いします。

60 :名無しさん@そうだ選挙にいこう:2008/01/18(金) 20:44:34
ソートしてレポートをつくったとき、
ソートした結果で上から1,2,3,…とナンバーを振るにはどうし
たらいいですか?
ううう
あああ
いいい
というテーブルから
1 あああ
2 いいい
3 ううう
とレポートをつくりたいです。



61 :名無しさん@そうだ選挙にいこう:2008/01/18(金) 20:50:19
>>60
そのレポートが使うクエリで並べ替えをすればいいのでは?

ついでに、
「っ」→「つ」のように小さい字を大きい字にする関数ってありますか?replaceが一番早いのでしょうか?

62 :名無しさん@そうだ選挙にいこう:2008/01/18(金) 23:16:48
>61
並べ替えた上で、1,2,3…と番号をふりたいのですがどうやったらいいのでしょうか。

63 :60:2008/01/19(土) 08:55:43
【 システム環境  . 】 WindowsXP, Access2003
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 否
【 検索キーワード 】 自動 順番 番号 ナンバー クエリ、これらを組み合わせて

すみません、以前の書き方があいまいでした。
[名前]というフィールドをもつテーブルがあり、
[名前]でソートしたクエリを作るとき、

[名簿番号][名前]

という2つのフィールドにしたく、
名簿番号は名前のソートした順に1,2,3…と
上のレコードから順番に番号をつけたのです。

どのようにしたらできるでしょうか。

64 :名無しさん@そうだ選挙にいこう:2008/01/19(土) 08:56:54
>>63
君には桐が向いてるよ、連番って関数が始めから用意してある

65 :60:2008/01/19(土) 09:12:03
>64
おぉ!
おぬし、ツンデレですな。このスレの人みんなツンデレか?

accessのヘルプで「連番」で検索したらわかりました!
ありがとうございます。

66 :前880:2008/01/21(月) 01:01:05
前スレで以下の質問をしたものです。
【 システム環境  . 】 WindowsXP, Access2003
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 なるべく否
名前・第一希望・第二希望をフィールドに持つ
このようなテーブルがあり、

名前|第一希望|第二希望
鈴木|モモ  |リンゴ
佐藤|ブドウ |リンゴ
福田|リンゴ |ブドウ
守屋|モモ  |イチゴ
阿部|ブドウ |イチゴ

以下のようなレポートを作成するにはどうしたらいいでしょうか。
クラス分けで考えましたが、第一希望と第二希望で 2箇所でグループを作りたいのですが、
いい方法はありますか?

-モモ希望
鈴木|モモ  |リンゴ
守屋|モモ  |イチゴ
-リンゴ希望
鈴木|モモ  |リンゴ
佐藤|バナナ |リンゴ
福田|リンゴ |ブドウ
-ブドウ希望
佐藤|ブドウ |リンゴ
福田|リンゴ |ブドウ
阿部|ブドウ |イチゴ
-イチゴ希望
守屋|モモ  |イチゴ
阿部|ブドウ |イチゴ

67 :名無しさん@そうだ選挙にいこう:2008/01/21(月) 01:02:07
前スレで以下の質問をしたものです。
【 システム環境  . 】 WindowsXP, Access2003
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 なるべく否
名前・年齢・第一希望・第二希望をフィールドに持つこのようなテーブルがあり、
以下のようなレポートを作成するにはどうしたらいいでしょうか。

名前|年齢|第一希望|第二希望
鈴木|20|モモ  |リンゴ
佐藤|25|ブドウ |モモ
福田|50|リンゴ |モモ
守屋|35|モモ  |イチゴ
阿部|40|ブドウ |イチゴ

新たな要望が出てきて、第一希望が(モモ)の人を年齢順に並べ、
その下に第二希望が(モモ)の人を年齢順に並べたレポートを作りたいです。

-モモ希望
守屋|35|モモ  |イチゴ
鈴木|20|モモ  |リンゴ
福田|50|リンゴ |モモ
佐藤|25|ブドウ |モモ
-ブドウ希望
(略
-イチゴ希望
(略
-リンゴ希望
(略

いい方法を教えてください。
自分のやってみた方法は以下です。

68 :前880:2008/01/21(月) 01:06:37
67の1行目は消し忘れです…

前スレでは、
>Unionクエリで擬似的に希望マスタ作れば。
>select 第一希望 as 希望 from T
>union
>select 第二希望 as 希望 from T
>そしたら、こんな風なクエリを作れるべ。
>select Q.希望, T.*
>from Q, T
>where (Q.希望=T.第一希望) or (Q.希望=T.第二希望)
というレスでできました。

今回、自分でやってみたのは、
第一希望で年齢順にしたものと、第二希望で年齢順にしたものを
ユニオンでつなげたクエリを作り、
希望マスタでグループ分けしたレポートを作りました。

しかし、レポートでは年齢順に並びませんでした。

69 :名無しさん@そうだ選挙にいこう:2008/01/21(月) 16:01:26
レポート使った事ないんでアレなんだけど、
UNIONクエリで作成されるデータで、レポート表示用にテーブルを作ってみたら?
取り出すSELECT文ごとに、'1'、'2'、'3' ってフィールドを追加しとけば、
いざレポートを作成するときのソートキーに組み合わせることもできるだろうし。


70 :名無しさん@そうだ選挙にいこう:2008/01/21(月) 22:21:30
入力と出力の仕様の乖離があまりにも激しすぎる場合は>>69の意見が正解。

ちなみにレポート定義の並び順が設定されてるとレコードソースにどんなorder byが
設定されていようとレポート定義の並び順のほうが優先されるんだけど、それは大丈夫?

71 :名無しさん@そうだ選挙にいこう:2008/01/22(火) 08:07:04
Access2003(WindowsXP SP2)をつかっています。

レポート中にpng透過画像を貼り付けたのですが、透過部分が"白"になってしまい、
透明になりません。

社名の上に押印した感じにしたかったのですが、なにかやり方ありますか?

72 :名無しさん@そうだ選挙にいこう:2008/01/22(火) 21:45:11
社名の上に押印した感じのpng画像を貼り付けるんだ

73 :名無しさん@そうだ選挙にいこう:2008/01/22(火) 23:45:27
重ねる順序を印鑑のpng画像を下にしてその上に
社名のテキストボックスもしくはラベルの背景を透明にする
っていうのじゃダメ?

74 :名無しさん@そうだ選挙にいこう:2008/01/23(水) 08:09:35
>73
それだと押印の上に社名が…って、釣りだったのですね、そうなのですね。

75 :名無しさん@そうだ選挙にいこう:2008/01/23(水) 08:59:22
レポートの重ね合わせは、桐にしとけ

76 :73:2008/01/23(水) 10:02:30
>>74

>それだと押印の上に社名が…

そうだけど、印刷したら大して変わらないんじゃない?
別に釣りじゃないよ。

77 :71:2008/01/23(水) 10:31:31
>>76

試したんですが、雰囲気がいまひとつでした。
やっぱり文字の上に重ねたいですね、、、
って>>73のコロンブスの鶉の卵的な発想にやり方が良さそうです。

これでFAかと。


78 :名無しさん@そうだ選挙にいこう:2008/01/23(水) 14:31:24
透過gifにしとけ  とだけ言っておこう

79 :名無しさん@そうだ選挙にいこう:2008/01/23(水) 19:49:42
社名だけの画像を持ったレポートと、社名・押印の画像を持ったレポートを用意しておき、押印フラグでopenreportを振り分けろ。

80 :名無しさん@そうだ選挙にいこう:2008/01/23(水) 21:17:43
すみませんが教えてください。
CSVファイルをVBAでInput
を使用して取り込もうとしています。
只csvファイルの先頭行に項目名があって
それは取り込む必要がないのですが、どのようにすればいいのでしょうか。



81 :名無しさん@そうだ選挙にいこう:2008/01/24(木) 01:14:34
>>80
手作業でインポートしてみて

ファイル→ファイブデータの取り込み→テキスト形式を選択
先頭行をフィール行として使うのチェックを入れ
設定をクリック、定義名をつける。

VBAでインポートする際その定義名を指定してインポートすればよい

Access csv インポート 定義
で検索すれば出てくるかな?

82 :71:2008/01/24(木) 09:37:53
>>78
世論では透過gifも使えないらしいですが、ひょっとしていけるの?

>>79
印影つきがあれば社名のみはいらないかと思ってます。
でも、そういう振り分けも気が利いてていいですな〜





83 :名無しさん@そうだ選挙にいこう:2008/01/25(金) 17:35:07
select * from t1
left join t2 on t1.key = t2.key

たとえばこんなケースで、各行のデータについて別個に

if (t1.Value > t2.Value) then
  (t1.Value - t2.Value) * 10
else if (t1.Value > t2.Value * 2)
  (t1.Value - t2.Value * 2) * 100 + (t1.Value - t2.Value) * 10
else
  0

としたい場合、どのような手段がよいでしょうか??
結果をテーブルに挿入したいと思います。

できればSQL文で記述したいですが、VBAを使ったものでもOKです。
よろしくお願いいたします。

84 :名無しさん@そうだ選挙にいこう:2008/01/25(金) 17:54:52
iifの入れ子にすればSQLでOK
Nz(t1.Value, 0)は忘れずに


85 :名無しさん@そうだ選挙にいこう:2008/01/25(金) 22:08:38
Access2000に関して質問です。

編集中の話なんですが、
ファイル内クエリ・マクロの数が増えすぎて視認性がかなり悪くなってきています。
クエリ・マクロなどをディレクトリ構造ぽく表示させたり、
編集する気のないものを他に移すなどの操作は可能でしょうか?
それともこういうときは.mdbファイルを複数作るしかないでしょうか?

86 :名無しさん@そうだ選挙にいこう:2008/01/25(金) 22:21:33
グループってのがあるけど、使い方がよくわからんな。

87 :名無しさん@そうだ選挙にいこう:2008/01/26(土) 01:42:56
>>86
ショートカットのグループだから編集中はイマイチ使いにくいね。
ユーザーとして使うときは下手なメニューフォームより使い安い。

88 :名無しさん@そうだ選挙にいこう:2008/01/27(日) 14:44:56
Microsoft Office Access 2007 のリリースと共に、Access 2007 Developer Extensions および Access 2007 Runtime の無料ダウンロードが利用できるようになります。
データベース開発者は、これらのユーティリティに用意されているツールを使用することで、データベースをパッケージ化して展開したり、データベース テンプレートを作成したりできるほか、
データベースを Microsoft Visual SourceSafe などのソース コード管理システムに統合することもできます。

Access 2007 Developer Extensions または Access 2007 Runtime のダウンロード方法と使用方法の詳細については、[参照] セクションのリンクを参照してください。

89 :名無しさん@そうだ選挙にいこう:2008/01/28(月) 23:26:54
Access2007だと、フォームに作ったコマンドボタンにショートカットキーが登録できないのですか?
&Aとか

90 :89:2008/01/31(木) 12:00:26
でけた
つーか、MSは、なるべくXMLでリボン記述させようとしてヘルプをワザと手抜きしてる希ガス

91 :名無しさん@そうだ選挙にいこう:2008/01/31(木) 21:37:35
Accessバグ多すぎだわ。
桐にしよ。

92 :名無しさん@そうだ選挙にいこう:2008/02/03(日) 13:12:19
みなさんにとってはクソ簡単なことでしょうが、初心者の私には頭がパンクしそうなので教えてください。
Left関数の質問です。

Aという入力欄があり、そこに
111111111122222222 or 1111111111122222222
と入力できます。

2は8桁固定です。
しかし1が10桁or11桁なのです。

1だけを抜き出すのはどうしたらよいのでしょうか?

Left(A,A-8) なんてことはできないのでしょうか??


93 :名無しさん@そうだ選挙にいこう:2008/02/03(日) 13:17:37
簡単。でもLEFT関数だけじゃ無理。入力欄をA1として
=LEFT(A1,LEN(A1)-8)

94 :名無しさん@そうだ選挙にいこう:2008/02/03(日) 13:19:08
あ、ここACCESSだった。ごめん。でもやり方は同じよ

95 :92:2008/02/03(日) 13:29:43
>93

ありがとうございます。
できました。
感謝です。

96 :名無しさん@そうだ選挙にいこう:2008/02/03(日) 22:20:05
型番  日付
A    2008/02/03
B    2008/02/04
C    2008/02/05
D    2008/02/06
E    2008/02/07
F    2008/02/08

エクセルで上記のような表があるとします。
クエリに関数を入れて本日〜4日後の2008/02/06までを”全て”
抜きとって表示したいのですが関数わかる方おられませんか。

2008/02/07と2008/02/08は不要としたいのです。
自動的に毎日4日間を抜き取ることはできますか?

97 :名無しさん@そうだ選挙にいこう:2008/02/03(日) 23:02:03
>96
日付部分の抽出条件に
Between Date() And Date()+4

98 :sage:2008/02/05(火) 18:02:19
エラーの説明を取得したいのですが、
AccessError(エラー番号)でエラーの内容を取得すると
既定の文書は表示できるのですが、
例えばエラー2473で説明文の|2と|1を取得することは可能でしょうか?


99 :名無しさん@そうだ選挙にいこう:2008/02/05(火) 18:23:05
AccessClubで質問してみます。マルチすみませんでした。

100 :名無しさん@そうだ選挙にいこう:2008/02/09(土) 14:54:29
【 システム環境  . 】 WindowsXP**, Access2003 SP3**
【 VBAが使えるか .】 はい
【 VBAでの回答  】 可
【 検索キーワード 】 mdb リンクテーブル バックアップ

現在システムMDBとデータMDBを作成しリンクテーブルを張って動かしています。
システムMDB起動中にフォームのコマンドボタンからデータMDBのバックアップをとる方法を教えてください。


101 :名無しさん@そうだ選挙にいこう:2008/02/09(土) 17:22:57
バックアップと同時に最適化もできておすすめ

DBEngine.CompactDatabase "C:\××××\Data.MDB", "C:\データバックアップ\Data.MDB"


102 :名無しさん@そうだ選挙にいこう:2008/02/09(土) 17:45:06
クロス集計で前年同月との売上比較を行っています。
クエリ実行後の形が

      200701 200801
売上先1 50,000 65,000
売上先2 30,000 40,000


となっているのですが、この右側に前年同月比の増減を設けるにはどうしたら良いでしょうか。
列名は年+月なので、毎月変わります。
現在増減はエクセルを介して作成しているのですが、
アクセス上で完結させたいのです。宜しくお願いします。

103 :名無しさん@そうだ選挙にいこう:2008/02/09(土) 18:58:33
>>102

クロス集計クエリーをべースにクエリーを作れば
いいんじゃないかな

104 :名無しさん@そうだ選挙にいこう:2008/02/09(土) 19:02:41
102です。
増減部分が上手く行かないのです。
>103さんならどのように記述しますか?


105 :名無しさん@そうだ選挙にいこう:2008/02/10(日) 11:02:36
>>101
回答ありがとうございます。
この式はdata.mdbが閉じていることが条件のようですが、
システムmdbとdata.mdbはリンクテーブルを張っていますのでシステム側から、この式を実行することができません。
何か解決方ありますでしょうか



106 :名無しさん@そうだ選挙にいこう:2008/02/10(日) 13:56:27
リンクテーブルが張ってあるだけなら問題なく実行できる、
実行不可なのはリンクテーブルのどれかが使用中だから。

連結フォームや連結レポートはきちんと閉じて、data.ldbの有無を
事前にDir()関数で調べてから実行しる。

107 :名無しさん@そうだ選挙にいこう:2008/02/10(日) 14:16:21
>>104
>>104
102の結果になるようなテーブルをつくって
クロス集計をベースにしたクエリーを作ってみたけど
差額は計算されたよ

SQLで表示させたら以下になった。

SELECT テーブル2のクロス集計.売上先, テーブル2のクロス集計.[200701], テーブル2のクロス集計.[200801], [200701]-[200801] AS A
FROM テーブル2のクロス集計;

列見出しが毎月変わるという問題があるけど
抽出条件の設定をどうやっているかわからないので
とりあえずこれだけで

108 :名無しさん@そうだ選挙にいこう:2008/02/10(日) 14:16:27
もうバッチ使ってコピーしちゃえば

hoge.bat
作って
XCOPY C:\××××× C:\バックアップ/Y
ってコマンド書いて

Call Shell("C:\hoge.bat", 1)
で実行するのはどう?



109 :名無しさん@そうだ選挙にいこう:2008/02/10(日) 16:25:47
Access初心者です。申し訳ありませんが知恵をお貸しください。

【 システム環境  . 】 WindowsXP, Access2007
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 否
【 質問内容】 AccessをWeb上の画面で使用することは可能でしょうか?
Access2003では作成する機能があったと思うのですが・・・。
       
       インポート(エクスポートかも?)などでテーブルを表示するだけでなく
       web状で実際に「名前」や「年齢」などを設定して「検索ボタン」で該当する
       データが見れるようにしたいです。

       よろしくお願いいたします。

110 :名無しさん@そうだ選挙にいこう:2008/02/10(日) 18:12:22
>107 ありがとうございます。
しかし問題は、おっしゃる通り列見出しの処理です。
また、多重クエリではどうしても
列名称が一度フィックスされてしまい、動的に対応できません。
そのため、できれば単一クエリで一石二鳥の解決策を探しています。

とりあえずは
クエリ1で、当月以前の月に"0","1","2"... と列名称を付け、13ヶ月分を集計。
クエリ2で、クエリ1の列"0","12"をそれぞれ"当月","前年同月"として再抽出し、
"[当月]-[前年同月]"を増減として抽出しました。
ご協力ありがとうございました。ですが
もっとエレガントな解決法があればお知恵をよろしくお願いします。

111 :名無しさん@そうだ選挙にいこう:2008/02/10(日) 23:47:28
>>109
つ「ASP.NET」

112 :名無しさん@そうだ選挙にいこう:2008/02/12(火) 17:27:50
>>101
>>106
>>108
いろいろと回答ありがとうございました。
結局、DBEngine.CompactDatabaseを使ってリンク元バックアップをとりました。
システム.mdbの終了時に確認フォームを設け、data.mdbのバックアップをとるかどうかのチェックボックスを作り便利になりますた。


113 :名無しさん@そうだ選挙にいこう:2008/02/14(木) 16:54:09
【 システム環境 . 】 Windows2000/XP, Access2000
【 VBAが使えるか .】 はい
【 VBAでの回答  】 可

初歩的な質問すません。

<実現したいこと>
フォームのサイズが変更されても常にフォームの一番下にボタンを表示したいのだすが
なかなかうまいこといきません。。

<試してみたこと>
フォームの最大化ボタンを有効にしてそれが押されたらフォームリサイズイベント(Form_Resize())で
フォーム上のコントロールのTOPとLEFTを変更して位置を移動したいんだけどエラーが発生します。
フォームが最大化する前のエリア外には移動できないみたいです。。
(エラー番号:2100
 エラー内容:コントロールまたはサブフォーム コントロールが大きすぎるため、配置できません。)

解決方法がありましたらぜひ教えてくださいませm(_ _)m

114 :名無しさん@そうだ選挙にいこう:2008/02/14(木) 19:58:17
>>113
ボタンをフォームフッタに配置する。(のは駄目なのか?)

115 :名無しさん@そうだ選挙にいこう:2008/02/14(木) 21:24:21
フォームのサイズ変更不可にしちゃいなYO!

116 :113:2008/02/15(金) 09:54:40
レスありがd

>>114
おっと書き忘れ、単票フォームで表示してるんす。。
帳票フォームだったらその手がありますね(^-^)

>>115
最初はそうしてたんだけどお客さんのディスプレイ解像度がまちちまでさ…
17インチ使ってるのに1024x768にしてる人がいてびっくり。。


常にフォームの一番下じゃなくて、上にボタンを配置するしかないかなぁと考えとります。
(他の画面とはボタン配置が違っちゃうけど泣き入れよかな。)


117 :名無しさん@そうだ選挙にいこう:2008/02/15(金) 10:04:51
単票フォームにヘッダやフッタがないのか?

118 :113:2008/02/15(金) 15:01:16
>117
単票フォームにヘッダやフッタ、ありやした〜!(すっかり無いものと勘違いしてたす)
フッタにボタンを置いて問題解決っす!!
どうもありがdッ!!

119 :名無しさん@そうだ選挙にいこう:2008/02/15(金) 22:12:34
>>110
自己結合すりゃ良いじゃん

120 :名無しさん@そうだ選挙にいこう:2008/02/15(金) 22:28:22
>119
ぐぐって見ましたが良く解りません。
具体的にどうしたら良いでしょうか?

121 :名無しさん@そうだ選挙にいこう:2008/02/15(金) 22:34:42
[年月] に1年足した [年月+1年] を作って、[年月] と [年月+1年] をリレーション

122 :名無しさん@そうだ選挙にいこう:2008/02/16(土) 00:25:13
まあフィールド名が動的って時点でうんこ設計なんですけどね

123 :名無しさん@そうだ選挙にいこう:2008/02/16(土) 12:48:40
フォームテキスト内に既にある内容を、バックスペースやデリートで空にした瞬間、
同フォームのコマンドボタンを使用不可能にする処理を教えて下さい。

因みに自分が書いたコードは次の通りですが上記のように動きません。

Private Sub テキスト_Change()
If IsNull(Me!テキスト) = True Or Me!テキスト = "" Then
Me!コマンドボタン.Enabled = False
Else
Me!コマンドボタン.Enabled = True
End If
End Sub




124 :名無しさん@そうだ選挙にいこう:2008/02/16(土) 13:11:45
OnDirty

125 :名無しさん@そうだ選挙にいこう:2008/02/16(土) 13:28:06
>>124
回答ありがとうございます。
Dirtyイベントは既に試しましたが、使用フォームが連結フォームでないため機能しないようですね。
私のフォームは非連結フォーム、非連結テキスト。。。
もう少し考えてみます。
また良い案がありましたら教えて下さい。



126 :名無しさん@そうだ選挙にいこう:2008/02/16(土) 14:02:00
OnKeyUpでTextプロパティ見りゃいいじゃん。

127 :名無しさん@そうだ選挙にいこう:2008/02/16(土) 16:21:32
Private Sub テキスト_AfterUpdate()

ならおK

128 :名無しさん@そうだ選挙にいこう:2008/02/16(土) 16:36:11
>>123
プロパティを暗黙的に使用するとこういう間違いが起きやすい。
Me!テキスト.Value
Me!テキスト.Text
この2つの違いをきちんと理解しる。

>>126さんも言ってるけど、この場合はTextプロパティを参照すれば
ChangeイベントでもOnKeyUpでも実現可能。


129 :126:2008/02/16(土) 18:03:23
>>128
>123 の「バックスペースやデリートで空にした瞬間」だけ満たしゃ
いいなら、どっちでもいいね。
後は右クリックから切り取りや貼り付けされたときにどうしたいのか
によってお好きな方でって感じかな。

130 :名無しさん@そうだ選挙にいこう:2008/02/16(土) 19:11:34
いろいろと有り難うございます。
勉強になりました。
みなさんの回答を拝見するほど自分の無知を痛感しますorz

131 :名無しさん@そうだ選挙にいこう:2008/02/16(土) 20:37:58
お聞きしたいのですが
クエリを削除してもHDの容量が減らないのですが
これは永久的に減らせないのでしょうか?
テーブルについてもそうなのでしょうか?

132 :名無しさん@そうだ選挙にいこう:2008/02/16(土) 20:45:44
>>131
最適化してみたら?

133 :名無しさん@そうだ選挙にいこう:2008/02/17(日) 18:29:47
キタ━━━━━━━━━(゚∀゚)━━━━━━━━━ !!!!!

A few readers have recently expressed concern and anxiety about an article published by The Register. Particularly,

“VBA will disappear completely when Office 2007 for Windows is replaced, sometime around 2009.”

134 :名無しさん@そうだ選挙にいこう:2008/02/17(日) 20:19:38
これって次のofficeでVBAがなくなるってこと?

機械翻訳

数人の読者が最近、Registerによって発表された記事に関して関心と心配を述べました。 特に

「完全にいつか2009年にWindowsのためのオフィス2007を取り替えるとき、VBAは見えなくなるでしょう。」


135 :名無しさん@そうだ選挙にいこう:2008/02/17(日) 20:45:39
これは恥ずかしい。
ネタ元が「誤報でしたスンマソン」と言って訂正した記事を今ごろ出されても。w

ちなみに、オリジナルはこの下に「んなこたねーよ」というのが続くんだけど、
そこはわざとカットしてある。
釣られたい人だけ釣られてください。

136 :名無しさん@そうだ選挙にいこう:2008/02/17(日) 22:06:36
Access2009ではVBAは付属しない、別途Visual Studioを購入する必要がある。
別にVBAがなくなる訳ではない。

137 :名無しさん@そうだ選挙にいこう:2008/02/17(日) 22:51:21
そんなんなったら事実上業務に使えなくなるじゃん
オマケで付いてるからこそ、用途の幅も広かったのに。
MS様も解っててやるんだろうけど。

138 :名無しさん@そうだ選挙にいこう:2008/02/17(日) 23:06:19
ソースもないネタ真に受けんなよw
必死杉ww

139 :名無しさん@そうだ選挙にいこう:2008/02/17(日) 23:12:40
既にMSDNライブラりからVBAが削除されてるしなぁ
Access2009でVBA動いてもエディタ削除されたら新規作成も編集も出来ないし

140 :名無しさん@そうだ選挙にいこう:2008/02/17(日) 23:31:47
2007にさえ上げる予定のない漏れに、2009の話なんてしてもムダ。

141 :名無しさん@そうだ選挙にいこう:2008/02/18(月) 09:18:40
KINGSOFT Office にVBAライセンスされたけど、やはりエディタは付属しないな

142 :名無しさん@そうだ選挙にいこう:2008/02/18(月) 09:33:31
VB自体が.netに移行するし。

143 :名無しさん@そうだ選挙にいこう:2008/02/18(月) 09:40:45
ま、Officeは2007で変なことになってるし桐にしろってこった。

144 :名無しさん@そうだ選挙にいこう:2008/02/18(月) 10:11:42
.NET Framework入れてメモ帳で開発するお!

145 :名無しさん@そうだ選挙にいこう:2008/02/18(月) 21:59:44
Mac版Office 2008ではVBAがなくなったな。

146 :名無しさん@そうだ選挙にいこう:2008/02/18(月) 22:12:27
なくしたというより、間に合わせる時間がなかったらしい。

147 :名無しさん@そうだ選挙にいこう:2008/02/19(火) 11:24:42
ねえ、SQLマスターすればVBA使わなくてもアクセス不自由なく使いこなせますか?

148 :名無しさん@そうだ選挙にいこう:2008/02/19(火) 15:04:37
単純なSelect文なら選択クエリの方が簡単


149 :名無しさん@そうだ選挙にいこう:2008/02/19(火) 21:18:11
VBAマスターすればマクロ使わなくても不自由しない。
VBAとSQLの知識はそれぞれ別モノだから完全に使いこなすには両方とも必要。

150 :名無しさん@そうだ選挙にいこう:2008/02/19(火) 22:16:48
VBA使わないと非常に不自由するだろうな

151 :名無しさん@そうだ選挙にいこう:2008/02/19(火) 23:41:49
まだVHS使ってるオレは勝ち組。

152 :名無しさん@そうだ選挙にいこう:2008/02/20(水) 11:36:22
【 システム環境  . 】 WindowsXP, Access2000 SR-1 professional
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 否
【 検索キーワード 】 更新できないクエリ 複数のリレーション
テーブル1
取引先ID(主キー、オートナンバー)、会社名、営業担当、営業補佐担当
テーブル2
社員ID(主キー、オートナンバー)、氏名
クエリ1
テーブル1:営業担当、テーブル1:営業補佐担当は、取引先に対する当社の担当者のことで、それぞれテーブル2:社員IDをルックアップさせ、テーブル2:氏名を表示させたい。

…のですが、同じフィールドに2つのリレーションがダメみたいで、うまくいきません。
どうしてたらよいでしょうか。
アクセス初めてまだ数ヶ月の初心者です。
みなさまのお知恵をお貸しください。
よろしくお願いいたします。


153 :名無しさん@そうだ選挙にいこう:2008/02/20(水) 12:21:51
クエリデザインのテーブル表示で、同じテーブルでも追加できるはずだが・・・

154 :152:2008/02/20(水) 13:27:41
>153さん
なるほど…。

と思ってやってみたのですが、うまくいきません。
・リレーションシップを開いて、テーブル2_1を追加。
 テーブル2:社員ID(1) - テーブル1:営業担当(多)
 テーブル2_1:社員ID(1) - テーブル1:営業補佐担当(多)
 のようにリレーションを設定
・クエリのデザインビューにおいて、すでにあるテーブル1とテーブル2(1-多のリレーションが表示されている)にテーブル2_1追加。
・テーブル2_1:社員ID - テーブル1:営業補佐担当 を連結させる。
テーブル2_1:社員ID - テーブル1:営業補佐担当 の連結はできたのですが、1-多になりません。
データシートビューにするとレコードがまったく表示されなくなってしまいます。。。


155 :名無しさん@そうだ選挙にいこう:2008/02/20(水) 14:04:35
大きな勘違いしてないか?

156 :152:2008/02/20(水) 15:37:42
>155
そうなんですか?
なにを勘違いしているのかわかりません。
おしえていただけないでしょうか(>_<)

157 :名無しさん@そうだ選挙にいこう:2008/02/20(水) 15:45:12
・リレーションシップを開いて、テーブル2_1を追加。
 テーブル2:社員ID(1) - テーブル1:営業担当(多)
 テーブル2_1:社員ID(1) - テーブル1:営業補佐担当(多)
 のようにリレーションを設定


これがいけない。
とりあえず、リレーションは取り消すべし。


158 :152:2008/02/20(水) 17:35:48
>157
>とりあえず、リレーションは取り消すべし。
 テーブル2_1:社員ID(1) - テーブル1:営業補佐担当(多)
をはずしてみまら、できました。

いまいちよくわかってないんですが、
 テーブル2:社員ID(1) - テーブル1:営業担当(多)
もはずしたほうがいいでしょうか?

何度もすみません。


159 :名無しさん@そうだ選挙にいこう:2008/02/20(水) 17:39:22
意味もわからずヘタにリレーションを張ると、
障害の元になる。
アクセスに慣れるまでは一切つかうなもし。

160 :155:2008/02/20(水) 18:12:59
>>158
良く解らないなら、デーブルデザインの所でルックアップウィザード使って設定しなさい
データ型のあたりにルックアップって書いてある所あるから、そこらへん弄ってみて、たしかルックアップウィザードが起動する

161 :152:2008/02/20(水) 18:42:38
>158-159
レスありがとうございます。

>良く解らないなら、デーブルデザインの所でルックアップウィザード使って設定しなさい
ルックアップ使ってます。
たとえば、
 テーブル2:社員ID(1) - テーブル1:営業担当
をルックアップさせただけだと、クエリで テーブル2:氏名 が表示できなかったので、
リレーションを組まないとダメなのかなと思ったのですが、
いろいろおしえてもらってやっているうちに、リレーションを組まなくても表示できたので、
???となってしまい、「はずしたほうがいいでしょうか」と聞いてみました。

練習で作ってますので、いろいろ試行錯誤しています。
でも、
>アクセスに慣れるまでは一切つかうなもし。
ということは、リレーションなしでもいけるということみたいなので、
ご意見に従って作ってみることにします。

また、何かありましたら質問させていただきます。
よろしくお願いいたします。

162 :名無しさん@そうだ選挙にいこう:2008/02/21(木) 11:50:41
【 システム環境  . 】 WindowsXP, Access2000
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 否
【 検索キーワード 】 テーブルで新規レコードを追加してもクエリに追加されない
初心者です。
すごく困っています。

テーブルからクエリ、フォームを作成したのですが、
テーブル上で新規レコードを作成するとクエリ、フォームに反映されなくなってしまいました。

いつ頃からそうなったのかわからないのですが、
レコードを詳しく調べてみたら、
以前に追加クエリを使って追加したレコードがテーブルにはあるのですが、クエリにはないことがわかりました。
それ以降なのかわかりませんが、現在はテーブル上からの新規レコードがクエリ、フォームに反映されません。
選択フィルタがかかっているわけでもありません。


163 :名無しさん@そうだ選挙にいこう:2008/02/21(木) 11:52:27
すいません、162の続きです。

具体的には、
 テーブル上で新規レコード作成 : クエリ、フォームに反映されない
 クエリ、フォーム上で新規レコード作成 : テーブル、クエリ、フォームすべてに反映される
状態です。
なお、オートナンバーフィールドは、テーブル上から作ったレコードを反映して連番されています。
 例)
 テーブル上
  オートナンバー  │ フィールド1
  100        │ いちご
  101        │ みかん   ←更新クエリで作成
  102        │ ばなな   ←更新クエリで作成
  103        │ めろん   ←フォームで作成
  104        │ すいか   ←テーブルで作成
  105        │ れもん   ←フォームで作成
  (レコード番号ボックスの右の総レコード数は6)

 クエリ、フォーム上
  オートナンバー  │ フィールド1
  100        │ いちご
  103        │ めろん   ←フォームで作成
  105        │ れもん   ←フォームで作成
  (レコード番号ボックスの右の総レコード数は3)

どうか、よろしくお願いいたします。


164 :名無しさん@そうだ選挙にいこう:2008/02/21(木) 12:17:35
クエリ、フォームのデータソースは該当テーブルなのか確認汁

165 :163:2008/02/21(木) 14:41:30
>164さん
レスありがとうございます。
確認したところ、間違いないようです。
確認方法:テーブルにテストフィールドを追加したところ、クエリにも同フィールドが追加されました。

166 :名無しさん@そうだ選挙にいこう:2008/02/21(木) 14:45:24
じゃ問題ないじゃん

167 :名無しさん@そうだ選挙にいこう:2008/02/21(木) 23:06:00
出てきてないけど結合の使い方間違ってんじゃね

168 :名無しさん@そうだ選挙にいこう:2008/02/21(木) 23:44:52
クエリなんだからWHERE句がどうなってるか確認するのが先なんじゃね

169 :名無しさん@そうだ選挙にいこう:2008/02/22(金) 11:19:21
質問させて下さい
フォームテキスト内のコントロールをテーブルのIDフィールドとしています
実際にテキストを表示させたとき例えばIDが10なら ID : 10 と表示させたいのですがお願いします


170 :162-163:2008/02/22(金) 11:23:00
自己解決しました。
単純ミスでした。
お騒がせして申し訳ありません。
レスをいただいた皆さま、ありがとうございました。

171 :名無しさん@そうだ選挙にいこう:2008/02/22(金) 12:09:49
>>169です
自己解決しました。



172 :名無しさん@そうだ選挙にいこう:2008/02/22(金) 19:01:00
従業員名簿作ってます。
フォームに画像を表示させたいのですが、

○○○○.jpg だけ表示されてダブルクリックしないと写真が表示されません。(泣)

本の手順通りやってますが原因不明。


誰か助けて下さい!m(  )m

173 :名無しさん@そうだ選挙にいこう:2008/02/22(金) 23:12:13
自己解決しました。
単純ミスでした。

174 :名無しさん@そうだ選挙にいこう:2008/02/22(金) 23:13:39
>>173
他の人のために、解決法書いてってよ

175 :名無しさん@そうだ選挙にいこう:2008/02/23(土) 00:32:27
>>174
著作権的にまずいだろ。

176 :174:2008/02/23(土) 16:16:34
自己解決しました。

177 :175:2008/02/23(土) 16:28:32
自己解決しました。

178 :名無しさん@そうだ選挙にいこう:2008/02/23(土) 20:50:53
次々と自己解決してしまう魔法のスレはここですか?

179 :178:2008/02/23(土) 20:54:26
自己解決しました。

180 :名無しさん@そうだ選挙にいこう:2008/02/23(土) 23:40:53
自己発電しました。

181 :名無しさん@そうだ選挙にいこう:2008/02/23(土) 23:41:53
じゃ、おれも

182 :名無しさん@そうだ選挙にいこう:2008/02/24(日) 09:00:25
ちょ、ちょっと待ってくれ。俺も今からするから。

183 :名無しさん@そうだ選挙にいこう:2008/02/24(日) 15:39:01
すなーーーーーww

184 :名無しさん@そうだ選挙にいこう:2008/02/24(日) 16:02:58
【 システム環境  . 】 WindowsXP, Access2003
【 VBAが使えるか .】 はい
【 VBAでの回答  】 可
【 検索キーワード 】 Googleやヘルプでの検索キーワード


ファイルの1行目から5行目までがヘッダになっていて
実データが6行目からスタートするテキストファイルをインポートしたいです。

途中の行からインポートする方法を教えてください。

185 :名無しさん@そうだ選挙にいこう:2008/02/24(日) 16:04:36
ファイルの1行目から5行目までを削除してからインポートしてください。

186 :名無しさん@そうだ選挙にいこう:2008/02/24(日) 17:59:56
すみません、自己解決しました。

187 :名無しさん@そうだ選挙にいこう:2008/02/27(水) 10:02:09
自己解決しました。

188 :名無しさん@そうだ選挙にいこう:2008/02/27(水) 12:47:38
自己介錯しました。

189 :名無しさん@そうだ選挙にいこう:2008/02/27(水) 17:57:34
よく釣れるスレはここですか?

190 :名無しさん@そうだ選挙にいこう:2008/02/28(木) 10:58:55
テーブル
クエリ
フォーム
レポート



191 :名無しさん@そうだ選挙にいこう:2008/02/28(木) 10:59:41
ビュー
ストアドプロシージャ

192 :名無しさん@そうだ選挙にいこう:2008/02/28(木) 13:08:02

 エ
 ォ ム
 ポ




スト   ロ

193 :名無しさん@そうだ選挙にいこう:2008/03/01(土) 22:56:36
   ┌─‐‐─┐  みなさんは2ちゃんねるの初心者ですか?書き込む前に
    |_____________|  SG(セキュリティー・ガード)に登録しないと自作自演がバレてしまいますよ。
   ='========='== SGに登録せずに書き込んだ場合、あなたのパソコン内の
   / \  /│  情報は他人に見られていると考えてほぼ間違いないでしょう。
  ┌|-(・)-(・)-|┐ 自作自演がばれる方の多くはこの登録を怠っています。
  └|    〇   .|┘ 初期の頃から2ちゃんねるにいる方達は、ほとんどの方が
    | ___ |||||__ |  このBBSのコマンドの仕組みを知っています。ですから簡単に
    | \__/ |  あなたのIPアドレス等を抜き取り自作自演を見破ってしまいます。
   |    |||||   |  このコマンドの方法は決して教えないというのが初期の頃から
            2ちゃんねるにいる方達の間で暗黙の了解となっていましたが、
あまりの被害の多さに心を痛めた私はあえて公開することにしました。
SGしておけばまず抜かれるコマンド自体が無効になってしまうのでどんなにスキルが
ある人でもIPアドレスを抜くことが不可能になります。SGに登録する方法は、
名前欄に「 fusianasan 」と入れて書き込みする。これだけでSGの登録は完了します。
一度登録すれば、Cokkieの設定をOFFにしない限り継続されます。
fusianasanは、正式にはフュージャネイザン、又はフュジャネイザンと読みます。
元々はアメリカの学生達の間で、チャットの時にセキュリティを強化する為に
開発されたシステムです。これを行うことにより同一人物が書き込んでいるか
どうか判別する手段が遮断されるので安心です。ぜひ書き込む前には
名前蘭にfusianasanと入力してください。自分の身は自分で守りましょう


194 :名無しさん@そうだ選挙にいこう:2008/03/09(日) 18:51:51
自己解決しました。

195 :名無しさん@そうだ選挙にいこう:2008/03/10(月) 13:56:31
完成まで3か月あまりかかった大事なmdbを大切に保管しようと思いUSBメモリにバックアップしたよ
数ヶ月後、USBメモリになんかに大事なデータ入ってないや、消しちゃえってUSBメモリフォーマットしたよ
そして俺は終わった

196 :名無しさん@そうだ選挙にいこう:2008/03/10(月) 14:31:33
>>195
ハイハイ ワロスワロス

197 :名無しさん@そうだ選挙にいこう:2008/03/10(月) 19:51:09
【 システム環境  . 】 WindowsXP, Access2007
【 VBAが使えるか .】 はい
【 VBAでの回答  】 可
【 検索キーワード 】 レポート作成時、ルックアップフィールドに指定した複数列(項目)が参照できません。

はじめまして、お世話になります。
現在ルックアップフィールドを含むテーブルを元にレポート作成をしています。
テーブルでは商品IDの値を商品マスタより商品ID・商品名・価格の3項目を参照している形です。
テーブルの列では商品IDのみが表示されている状態ですが、レポート作成時には商品名・価格も表示させたいのです。
ルックアップフィールドの非表示項目を表示する方法はございますでしょうか?

商品ID(0),商品ID(1),商品ID(2)といった形で参照できるかと思ったのですが
どうも無理なようです。
ご存知の方いらっしゃいましたら、是非ともご教示いただけますようよろしくお願いします。 


198 :名無しさん@そうだ選挙にいこう:2008/03/10(月) 21:23:35
>>197
ルックアップウィザードなんぞ使わんでも・・・ってか使ったこと無いなぁ

テーブルのリレーションって知ってるかぃ?

199 :名無しさん@そうだ選挙にいこう:2008/03/10(月) 21:26:13
×ルックアップウィザード
○ルックアップフィールド

だったかw

とにかくあれだ
レポートのレコードソースにSQLで結合して書けば問題なしじゃ?

200 :名無しさん@そうだ選挙にいこう:2008/03/10(月) 22:12:32
>>198
>>199
レス頂きどうもありがとうございました!

お返事いただいたとおり、レコードソースのところでクエリーをビルドしてやれば値は参照できます。
ただ、せっかくテーブルでルックアップ(フォームのコンボボックスなどでは商品名も金額も表示されている状態)してくれているので、
簡単に参照できるスマートな方法があるはずと思い質問させていただいた次第です。

上にも書きましたが、商品ID(0),商品ID(1),商品ID(2)といった形だとエラーが表示されるので、
配列のような形ではどうも参照できないようです。

もし無ければお答えいただいた方法でさせていただきますが、
他に方法があれば是非ともご教示ください。
よろしくお願いします。

201 :名無しさん@そうだ選挙にいこう:2008/03/10(月) 22:36:50
はい、はい、おまえら Google Gears に SQLite が来ましたよー
Access 終了しますた

http://code.google.com/apis/gears/api_database.html
http://code.google.com/apis/gears/

202 :名無しさん@そうだ選挙にいこう:2008/03/10(月) 22:46:24
>>200
テーブルのリレーションしてれば勝手に出るはず・・・・

きちんと説明するが、フォームでは通常ルックアップは使わないから
そう説明したのよ。
レポートではルックアップ使ってもいいが、レポート用に
テーブル作成してからじゃないとダイナセットでロックするとエラー起こしても
知らんぞ

なんで商品(0)何ぞ配列みたいな指定するのか意味がわからん
そもそもコントロールのデータに 商品(0) って指定してるのか?

203 :名無しさん@そうだ選挙にいこう:2008/03/10(月) 23:16:17
AccessはGUIの凄まじい生産性の高さがすべて。
バックエンドは今となってはMSSQLでもSQLiteでもMyでもPでもOでも2でも何でもいいわ。
SQLiteすすめんならAccessなみのGUIをかぶせてくれ。APIなんか叩きたくないわ。
漏れはとりあえずAIRから何か出てくるのを寝て待つ。

204 :名無しさん@そうだ選挙にいこう:2008/03/10(月) 23:19:07
>>202
何度もすみません。
レスいただき、ありがとうございます。

テーブルを操作するフォームでは、基本的に更新や削除のクエリーを使用しております。
レポートの場合もご指摘いただいたとおり、レポート用のテーブルなどを作成して対応させていただいております。

ただ今回の件はACCESSの豆知識レベルの話で、こんなこと出来ないのかなと疑問に思った訳でして・・・・。
テーブルではルックアップの設定で複数列の情報を持っているようなのに、
その情報を簡単に参照する方法があれば知りたかったんです。

配列のように書いたのは単なるイメージで、あれに近い方法で参照する方法があるのかなと思っただけです。

そもそもルックアップっていうのもクエリーということで、実際にテーブルには複数列情報を持ってるわけでは無いのでしょうか・・・?

すみません、いろいろ有難うございます。
ダメモトでもう少しいじってみますね!

205 :名無しさん@そうだ選挙にいこう:2008/03/10(月) 23:26:55
ルックアップとリレーションシップを混同している人が複数いる件

206 :名無しさん@そうだ選挙にいこう:2008/03/11(火) 00:07:06
>>200
>フォームのコンボボックスなどでは商品名も金額も表示されている状態

レポートでもフォームと同じ方法が(普通はやらないけど)使えるよ。
フォームと同じようにレポートにコンボボックス配置して
フォームと同じように別のテキストボックスのレコードソースに.Column(1)とか.Column(2)とか
指定してやるだけ。
フォームで出来てるからレポートでもやりたいということなら、どうぞ。

普通はやらないけど。

207 :名無しさん@そうだ選挙にいこう:2008/03/11(火) 17:48:13
こんにちは。
Access2000を利用しています。

テキスト型に英語の大文字/小文字の混じったものを登録すると、
一部自動で大文字が小文字に変換されてしまいます。
このいらない機能を回避したいのですが、方法を教えていただけますでしょうか?
よろしくお願いいたします。

例:TOb → Tob など

208 :名無しさん@そうだ選挙にいこう:2008/03/11(火) 18:16:10
ツール→オートコレクト
で、該当する自動修正のチェックをはずす。

209 :名無しさん@そうだ選挙にいこう:2008/03/12(水) 14:46:54
ラベルの上にマウスポインターが来たときに
そのポインターを指マークとかになるようにできますか?
動きとしてはブラウザでリンクあるところにカーソル持っていった時みたいな感じです。
よろしくお願いします。

210 :207:2008/03/13(木) 16:25:53
>208
ありがとう!

211 :名無しさん@そうだ選挙にいこう:2008/03/13(木) 19:40:35
ひとつのレポートに「ヘッダ、詳細、フッター」を
3つ作ることは可能ですか?

212 :名無しさん@そうだ選挙にいこう:2008/03/13(木) 19:49:06
ヘッダーとフッターはグループレベルがあるからともかく、詳細は無理。

目的をはっきり晒せ。
その質問が出ること自体、手段の選択を誤っている気がするぞ何となく。

213 :名無しさん@そうだ選挙にいこう:2008/03/13(木) 21:33:14
サブレポート3つ作ればいいんじゃね?

214 :211:2008/03/13(木) 21:36:35
3つのレポートを1ページづつ印刷したいのです

一つのレポートで複数ページがあって
各レポートの一ページづつを順に印刷したいです

仮に3つのレポートが3ページづつあり
1-1,1-2,1-3
2-1,2-2,2-3
3-1,3-2,3-3
(1-1はレポート1の1ページ目の意)
であった場合
現状は
1-1,1-2,1-3,2-1,2-2,2-3,3-1,3-2,3-3
という順で印刷されますがこれを
1-1,2-1,3-1,1-2,2-2,3-2,1-3,2-3,3-3
と言う風に印刷したいのです

で、先の質問は
レポートのデザインがあのように変更できれば(一つのレポートで3つ詰められたら)
希望の順番で印刷はできるな、と考えての質問でした。
不明瞭な質問で申し訳ありませんでした。
良い打開案が得られれば幸いです

215 :名無しさん@そうだ選挙にいこう:2008/03/13(木) 21:41:06
>>214
その3つのレポートって同じレコードソースなの??

216 :211:2008/03/13(木) 21:45:55
レコードは同じモノです

217 :211:2008/03/13(木) 21:49:38
レコードは同じモノです

218 :名無しさん@そうだ選挙にいこう:2008/03/13(木) 21:59:48
ヘッダの高さが一緒でいいなら3ページ分横にならべたらどう?

219 :名無しさん@そうだ選挙にいこう:2008/03/13(木) 22:26:14
>>217
うーんレコードソースが同じならいくらでも並び替えはできそうな気がするけど・・・
手数かもしれないけどテーブルとフィールド名出せるかな?

220 :211:2008/03/13(木) 22:53:37
今手元にデータがないのでなんともならないです。
申し訳ない。

221 :名無しさん@そうだ選挙にいこう:2008/03/13(木) 23:52:16
納品書→受領書→請求書と3枚ひと綴りにして連続印刷するイメージか・・・?

222 :211:2008/03/14(金) 06:09:55
221>>
です、そういう感じです。


223 :名無しさん@そうだ選挙にいこう:2008/03/14(金) 15:32:34
レコードソースが同じという前提で
納品書-受領書-請求書-売上元帳 4枚を順次
印刷ならやったことがある。

個別に作ったそれぞれのレポートを、縦にサブレポートとして
4枚埋め込んだ大きなレポートを作って印刷する仕様でできたけどね
┌───┐
│┌─┐│
││ 1││
│└─┘│
│┌─┐│
││ 2││
│└─┘│
│┌─┐│
││ 3││
│└─┘│
└───┘
↑こんな感じ

納品書1枚目-受領書1枚目-請求書1枚目-元帳1枚目
         :
         :
納品書X枚目-受領書X枚目-請求書X枚目-元帳X枚目
という感じで出てくるけど。


224 :211:2008/03/14(金) 21:34:29
ご協力ありがとうございました

皆さんのご助言を参考にいろいろ試した結果
目的の印字が出来ました。

ありがとうございました

225 :名無しさん@そうだ選挙にいこう:2008/03/14(金) 21:52:57
DQN男消えろ DQN男消えろ DQN男消えろ DQN男消えろ 
DQN男消えろ DQN男消えろ DQN男消えろ DQN男消えろ 
DQN男消えろ DQN男消えろ DQN男消えろ DQN男消えろ 
DQN男消えろ DQN男消えろ DQN男消えろ DQN男消えろ 

226 :名無しさん@そうだ選挙にいこう:2008/03/14(金) 21:53:24
でも具体的にどうやったかは書きません。

227 :名無しさん@そうだ選挙にいこう:2008/03/14(金) 21:58:28
>>209

できると思うがAPI必須。
ググれ。

228 :227:2008/03/14(金) 22:07:23
すまん。
API使わなくてもできるらしいが、
ちょっと裏技的。

229 :名無しさん@そうだ選挙にいこう:2008/03/16(日) 15:10:26
Pushing Access data to the web: Integrating with Office Live Small Business

230 :名無しさん@そうだ選挙にいこう:2008/03/16(日) 23:43:57
超初心者です。
会社がそうなので、バージョンは97です。

品番CDの発売年月別のカウントをしたいんですが、
どうクエリを作ればいいでしょうか?

231 :名無しさん@そうだ選挙にいこう:2008/03/17(月) 00:20:34
1.クエリで「品番」「発売年月」を抽出
2.クエリデザインで集計(Σ)→
集計条件に、「品番」は"カウント"、「発売年月」は"グループ化"を設定

232 :名無しさん@そうだ選挙にいこう:2008/03/17(月) 12:06:18
非常に困っています。どなたか救いの手をさしのべて下さい。
よろしくお願いします。

★ OS WindowsXP SP2、ACCESS2000
  ・フォームを使って前方一致や後方一致、部分一致のあいまい検索を行いたい。

  ・クエリにて抽出条件に「Like "*"&[form]![検索]![リスト] &"*"」と入れました。

  ・この条件だとフォームに入力した条件を抽出してくれず、全てのデータが表示されてしまう。

  テーブル/受注テーブル クエリにて受注先名称フィールドに上記の抽出条件を入力。

★ 事前にヘルプ・Google等で調べたところ
http://www.accessclub.jp/bbs3/0049/superbeg19247.html


▼━━━━━━━━━━━━
【 システム環境  . 】 OS WindowsXP SP2、ACCESS2000
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 否
【 検索キーワード 】 ACCESS あいまい検索

233 :名無しさん@そうだ選挙にいこう:2008/03/17(月) 12:11:46
>>232

クエリ内に書いてるのなら

Like '* & [form]![検索]![リスト] & *'

モジュール内なら

"Like '*" & [form]![検索]![リスト] & "*'"

234 :232:2008/03/17(月) 14:49:40
>>233
おかげさまでうまくいきました。
ありがとうございました。

235 :名無しさん@そうだ選挙にいこう:2008/03/17(月) 19:52:38
>>231
d。
ちなみに発売日から発売月別に抽出する条件は
例えば、200701*でOKですよね?

236 :名無しさん@そうだ選挙にいこう:2008/03/17(月) 20:05:40
NG

237 :名無しさん@そうだ選挙にいこう:2008/03/17(月) 22:05:16
だめ

238 :名無しさん@そうだ選挙にいこう:2008/03/17(月) 22:12:49
らめぇ

239 :名無しさん@そうだ選挙にいこう:2008/03/17(月) 23:01:28
発売日の格納方法によるんじゃないの

240 :名無しさん@そうだ選挙にいこう:2008/03/17(月) 23:33:26
その場合はそれがダメなんじゃないの

241 :名無しさん@そうだ選挙にいこう:2008/03/18(火) 05:36:32
バーカ

242 :名無しさん@そうだ選挙にいこう:2008/03/20(木) 08:40:41
Microsoft Office Live Workspace にウプして Share point list に変換して たテーブルで、コンボボックス使うには、どうすれば良いですか?

243 :名無しさん@そうだ選挙にいこう:2008/03/20(木) 19:56:12
すみません教えてもらいたいのですが

ACCESS で Aのフォームから 開いている別のBのフォームのSUB PROCEDURE って
実行できますか?
それとも必ずPublicのPROCEDUREを呼び出すことになるのでしょうか?

よろしくお願いします。

244 :名無しさん@そうだ選挙にいこう:2008/03/20(木) 23:06:19
Privateだと外部から呼べないよ。スコープってそういうもの。
Publicにすれば済む話では。
なんかPublicにできない理由でもあるの?

245 :名無しさん@そうだ選挙にいこう:2008/03/21(金) 19:15:46
>>243
Publicプロシージャは標準モジュールに置くものだと思い込んでる?
244の言うようにフォームのプロシージャをPublicにして

Call Form_フォーム名.プロシージャ名

246 :名無しさん@そうだ選挙にいこう:2008/03/22(土) 08:41:41
2007の分割フォーム内で、データシート部分と単票部分を行き来するショートカットありませんか?
また、作れませんか?

247 :名無しさん@そうだ選挙にいこう:2008/03/24(月) 19:56:22
フォーム詳細セクションの背景色をイベントで設定しようとすると、エラーが出ます。
私だけですかね。
Access2007です。

248 :名無しさん@そうだ選挙にいこう:2008/03/24(月) 22:32:37
ODBCへのデータソースを設定せずに、
VBA内で動的にODBCリンクしてADO接続したいのですが可能ですか?

249 :名無しさん@そうだ選挙にいこう:2008/03/25(火) 14:11:26
>>248
日本語でOK。

相手先RDBMSにもよるが、
ADOならネイティブ接続でいいだろ。
ODBC噛ませる理由が分からん。


250 :名無しさん@そうだ選挙にいこう:2008/03/25(火) 20:25:37
>>249
賛成w


>>248
APIでODBC設定いじれたはずだが意味はまったく無いね
accessで違うDB使うなんて微妙な事するわけ?

251 :名無しさん@そうだ選挙にいこう:2008/03/25(火) 21:30:49
ACCESSで顧客管理DBを作成した場合、
部署内の共有サーバにMDBファイルを配置すれば、
最大20名くらいで同時利用しても問題ないでしょうか?

それともSQLサーバを入れないと使えないとか、最大2Gまでしか使えないとかで、
実際にはきちんとしないと実用的に使えないものでしょうか?




252 :名無しさん@そうだ選挙にいこう:2008/03/25(火) 21:56:32
頻繁に書き込みがあるとは思えないし,問題ないでしょ。

253 :名無しさん@そうだ選挙にいこう:2008/03/25(火) 22:07:19
ありえん

254 :名無しさん@そうだ選挙にいこう:2008/03/25(火) 22:15:55
まさかMDBファイル1個だけ置いてみんなでそれ開くつもりかな?
あと、利用ユーザが20名って意味じゃなく、ほんとに20クライアント同時接続するの?
それによってもかなりレスが変わると思うけど。

255 :251:2008/03/25(火) 22:16:22
>>252

ありがとうございます。
ちょっと安心しました。

256 :251:2008/03/25(火) 22:19:40
>>254

えっと、イメージとしてはMDBファイル一個で、
利用ユーザー数20名くらい。

ただ役割分担により、同じ顧客の重複利用はそれほど多くはないと思いますが、
参照のみでしたら、当日の更新申請データは同時参照が多く発生する
可能性があります。

257 :名無しさん@そうだ選挙にいこう:2008/03/25(火) 22:37:46
>>256
テーブルのリンクを勉強しなさい・・・・・

いやそれ以前にフォームにテーブルが直結してるのか・・・・
せめてダイナセットとスナップショットくらい使い分ければなんとか
なるかも・・・・しれないな・・・

君のその知識でSQLサーバーはどうせ無理なのでは?

258 :256:2008/03/26(水) 07:31:23
>>257


ヒントをいただきありがとうございます。
そのあたりをよく調べてみます。


259 :名無しさん@そうだ選挙にいこう:2008/03/26(水) 09:06:02
フォームでデータ訂正時に、
特定フィールドの訂正が終了するまで当該テキストボックスからフォーカスが移動できないようにしたいんですけど
何か方法はありますか?

260 :259:2008/03/26(水) 09:25:23
特定フィールドじゃなくても、複数のアイテムフォーム・表形式フォームで特定レコードでも良いです
操作者が無関係な部分のデータを弄ちゃわないようにしたいです
ポップアップで別フォーム出さずに、全体を見渡しながら特定部分の訂正をさせたいんだけど

261 :名無しさん@そうだ選挙にいこう:2008/03/26(水) 09:58:05
>>259
いじられたくないコントロールに編集ロックをかければいいんじゃないか?

262 :259:2008/03/26(水) 10:13:37
どうも有り難うございます

あああ、そうなんですけど、、
表形式フォームで上下に移動しちゃって、関係ないレコード弄られちゃって、ってのも
対策したいんですけど

263 :名無しさん@そうだ選挙にいこう:2008/03/26(水) 10:17:42
>>259
そういうのは桐にしとけ。
デフォで、そうなってる。

264 :259:2008/03/26(水) 10:37:21
>>263
Accessではむずかしいでしょうか?

265 :名無しさん@そうだ選挙にいこう:2008/03/26(水) 22:42:07
フォーカス喪失時にキャンセル汁

266 :259:2008/03/26(水) 23:15:19
>>265
おお、ありがd

LostFocus には無いみたいだけど、Exit にはキャンセルパラメータありました
試してみます
でも、それでも >262 は無理っぽい気が・・・

267 :名無しさん@そうだ選挙にいこう:2008/03/26(水) 23:16:08
予想屋のオレ様が次の質問を予想。

「訂正が終了するまでフォーカスを移動させなくするのはできました!
でも訂正を中止したくて閉じるボタンをクリックしても閉じられないんですが」

268 :259:2008/03/26(水) 23:33:11
>>265
試しました
見事にデケました

どうも有り待とうございます
助かりました

269 :名無しさん@そうだ選挙にいこう:2008/03/26(水) 23:34:59
>>267
それは、Escかホットキーで対応しようと思っています
まだ、試していません

270 :名無しさん@そうだ選挙にいこう:2008/03/27(木) 01:22:30
・何をもって訂正の終了とするのか。
・関係あるレコードと関係ないレコードとやらはどうやって見分けるのか。

このあたりの定義が全然わからんわ・・・

271 :名無しさん@そうだ選挙にいこう:2008/03/27(木) 01:40:30
【 システム環境  . 】 Windows2000, Access2000
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 可

やりたいことは、開発ドキュメントが無い
昔にAccessで作成されたプログラムを
ツールを使って解析することです。

テーブルやクエリ、フォームの一覧やその内容のレポーティングはもちろん、
テーブルやクエリがどのフォームやレポートで呼ばれているか、
または使われていない(フォームやレポートから呼ばれていない)かの特定、
さらにそれらの結果をグラフィカルに表示できるとベストです。

Access解析ツールは世にたくさんあると思いますが、
上記のようなことが出来るツール、ありますでしょうか?
(フリーでも有料の製品でもかまいません)


272 :名無しさん@そうだ選挙にいこう:2008/03/27(木) 08:47:51
>>271
HotDocumentかAαの試用版でも試してみろ。

273 :名無しさん@そうだ選挙にいこう:2008/03/27(木) 09:23:07
>HotDocument

あれは使えん

274 :名無しさん@そうだ選挙にいこう:2008/03/27(木) 10:19:09
>>270
更新時のイベント

入力者自身
従業員に入力させてるんですけど、、
数日前の誤入力に気づいて訂正しようとすると、訂正時に関係ない所を弄っちゃって、
どこ弄ったか解らなくなって、データぐちゃぐちゃになってしまうのが困ってます
普段は訂正禁止にしておいて、表形式の狙ったセルだけ訂正できるようにしたかったです

275 :名無しさん@そうだ選挙にいこう:2008/03/27(木) 11:22:58
>>274
編集したくないセルクリックしたら面倒そうだな・・・・

276 :名無しさん@そうだ選挙にいこう:2008/03/27(木) 19:07:29
コマンドボタンの動作を、マクロとプロシージャを切り替えるのは、どうしたらよいですか?

277 :名無しさん@そうだ選挙にいこう:2008/03/27(木) 19:21:40
自己解決しますた

278 :名無しさん@そうだ選挙にいこう:2008/03/28(金) 18:29:36
ACCESS2007のその他のプリンタバグが解決されたそうだな。

279 :名無しさん@そうだ選挙にいこう:2008/03/28(金) 21:19:02
2007になって、だいぶ桐に追いついて来たねage

280 :名無しさん@そうだ選挙にいこう:2008/03/28(金) 22:34:07
プリンタバグって設定が元に戻るやつ?

281 :名無しさん@そうだ選挙にいこう:2008/03/29(土) 01:20:39
これでデザインビューで開くたびにA4以外の設定がA4に戻る
通称A4地獄からようやく開放されるのか・・・

で、何を当てればいいの・・・?

282 :名無しさん@そうだ選挙にいこう:2008/03/29(土) 09:40:04
>>278
おおおそんなクソ使用だったのか・・・
これからAccess2007に移行するところだったから、解決されていかったw

283 :名無しさん@そうだ選挙にいこう:2008/03/30(日) 09:43:56
Access 2007 Runtime SP1 is now available

284 :名無しさん@そうだ選挙にいこう:2008/03/30(日) 12:43:52
はじめまして、お世話になります。

サブフォームのあるフォームで、表示されているレコードをサブレコードごとコピーする 「コードの書き方」 を教えてください。
普通にレコードセレクタでレコードを選択してコピー → 新規レコードに移動してペーストでうまくできますが、
これをボタンに登録して処理をしたいと考えています。
コードでなくてもマクロでも結構ですので、何かよい方法をご存知でしたらご教示いただけますようよろしくお願いします。

285 :名無しさん@そうだ選挙にいこう:2008/03/30(日) 13:01:34
>>284
追加クエリーは試した?抽出条件はWhere [キー]=Forms![メインフォーム]![キー]で

286 :名無しさん@そうだ選挙にいこう:2008/03/30(日) 14:55:16
>>284
レコードセレクタはコードにもマクロにも乗らない
そういうのは、桐にしとけ

287 :名無しさん@そうだ選挙にいこう:2008/03/30(日) 14:59:18
ACCESS2007のその他のプリンタを記憶しないやつは、
ACCESS2008まで修正されないと思うよ。

288 :名無しさん@そうだ選挙にいこう:2008/03/30(日) 15:28:29
>>284
こういうこと思いつくやつが作ったテーブルには
えてして主キーが設定されていないもの

289 :名無しさん@そうだ選挙にいこう:2008/03/30(日) 18:35:23
ふつうにコマンドボタンウィザードにあるだろうよ。
選ぶだけでアホでも作れるヤツが。

290 :284:2008/03/30(日) 21:29:57
皆さんレスいただき、本当にありがとうございました。

>>285
追加クエリーだとコピーの時点でメインテーブルのキーが重複してしまってエラーが表示されてしまいました。

作業としましては、メインフォームとサブフォームで現在表示されているレコードと同じ内容のレコードを複製して、
それに新たな製造番号を付して新規レコードを作成したいといった次第です。

>>286
そうなんですか・・・・。
EXCELの「マクロの記録」のようなものがあれば、簡単にコード化できると思ったのですが・・・・残念です。

>>288
メインフォームもサブフォームも「製造番号」をキーに関連付けしてリレーションも設定しているのですが、
うまく行きませんでして・・・・。

>>289
ありがとうございます。
コマンドウィザードボタン試させていただきました。
これならうまく行けると思ったのですが・・・・
どうもこれだとメインレコードだけしか複製を作ってくれないようです。

きっと何か良い方法があると思うので、この後もいろいろ試してみます。
もし何かよい方法がありましたら、引き続きご意見をいただければ幸いです。
よろしくお願いします。

291 :名無しさん@そうだ選挙にいこう:2008/03/30(日) 22:06:34
2007ランタイムでステータスバーに触るとIEが立ち上がってMSのAccess宣伝ページが開く件について

292 :名無しさん@そうだ選挙にいこう:2008/03/30(日) 22:17:28
>>290
追加クエリー発動の際、製造番号を別番号で追加してる?

293 :名無しさん@そうだ選挙にいこう:2008/03/31(月) 08:26:31
Formのデータソースに選択クエリーじゃなくSQLを指定できねーの?

294 :名無しさん@そうだ選挙にいこう:2008/03/31(月) 22:49:40
データソースじゃなくてレコードソースのことなら普通にできる

295 :名無しさん@そうだ選挙にいこう:2008/04/01(火) 00:23:10

【 システム環境  . 】 WindowsXP, Access2003
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 可・否

スレ違いだったらすいませんが、具体的な方法では無くてアクセスでこんな事が
できるかな?ということを知りたいです。
もしできるのでしたら本格的にアクセスを勉強したいと思うのですが・・・・
現在はエクセルでは独学ですが仕事でVBAを使っていますが
アクセスは全く触った事がありません。

やりたいこと:製品原価の分析

4000〜5000位の部品からできている製品を一月2000台位(仕様としては約200種類)作っています。
データとしては一つ一つの部品に対して標準価格と実際にかかった費用を持っています。
1台1台の製品のそれぞれ一つ一つの部品をぶつけていき各々の差額をはじきだしておき
その後に製品別・部品別の形のような様々な切り口で分析をしたいと思っています。
データはシステムから落ちてくるので拾うことは可能です。
エクセルでやろうとしましたが行数の関係でちょっと難しいかと思いまして・・・・
どうぞよろしくお願いします。


296 :名無しさん@そうだ選挙にいこう:2008/04/01(火) 16:34:24
Today we released runtime builds for Arabic, Chinese (Simplified), Chinese (Traditional), Hebrew, Japanese, Korean, and Thai.

297 :名無しさん@そうだ選挙にいこう:2008/04/01(火) 18:41:11
>>296
俺も今気づいた。
1年前に客先に入れた英語版のランタイムをやっと入れ替えれるよ。

298 :名無しさん@そうだ選挙にいこう:2008/04/03(木) 21:51:57
JETだめじゃん、MySQLにしようかな

299 :名無しさん@そうだ選挙にいこう:2008/04/03(木) 21:54:50
JETはカーソルが使えなーから、死ぬほど遅いっての
VBAでRecordSet操作してたら日が暮れちゃうぞ

300 :たまご酒 ◆vkjheMXAW2 :2008/04/05(土) 23:06:42
>>296
ようやく日本語版ランタイムが出ましたね

これでAccessの利用の幅が大きく広がりますね



301 :たまご酒 ◆vkjheMXAW2 :2008/04/05(土) 23:17:28
>>274
どこをいじくったか

というのをわからなくなるのを防ぐのは結構大変ですし、あなたの言っているそれは、
Excelのセルの保護に該当するものだと思いますが、であるならば、Excelで入力させ
て、Accessで更新時にデータを取り込めばいいのでは?

取りこみ時に問題のExcelファイルのある場所を指定して、リンクテーブルを作成。
既存のテーブルとリンクテーブルとの差異を抽出。もしものときのために一定の期日
保存しておく。

または、入力時に入力日を自動で入れるように設定しておき、フォーム上で入力した
コントロールに条件付き書式設定で、1週間以内に入力したものは黄色にするとかを
入力日で判定させてみるとか。

とにかく、狙ったセルだけなんてのはExcelでも無理ですよ。セルの保護だってできる
のは指定した範囲のみ。日々業務が進んでいくのに、そのつどセルの保護設定なん
てしていられない。システムに人が合わせるようにしないとね。

それでも人間はミスをする。ならば修正した箇所は一定期間保存するために別テーブル
に一定期間保存しておくという最初のやり方をお勧めしますよ。

302 :名無しさん@そうだ選挙にいこう:2008/04/08(火) 18:58:21
やっとAccessで出納帳作れた
累計残高作るの苦労したわ

303 :名無しさん@そうだ選挙にいこう:2008/04/08(火) 22:21:20
どうやった?
連番IDを振って、DSUMでレコード自身以下のIDを持つレコードを合計するのが定番みたいだぬ

304 :コルネ:302:2008/04/08(火) 23:03:05
http://support.microsoft.com/kb/410756/ja

これを改変して累計表示クエリー作って、それを元クエリと Self inner join して、さらに SQL UPDATE で書き込んだ
体感的に、DSUM の数百分の一の速度で出来たわ
俺GJ!!

MySQL だと、SQL UPDATE に order by 使えるから一瞬一発なんだが、Access その他の素直なSQLだとメンドイな

305 :名無しさん@そうだ選挙にいこう:2008/04/09(水) 00:30:26
>>304
> 数百分の一の速度

日本語でオケ。
数百倍の速度だろ。

306 :名無しさん@そうだ選挙にいこう:2008/04/09(水) 08:11:02
>>304
良くやった、感動した!
オマイ頭良いな。

307 :名無しさん@そうだ選挙にいこう:2008/04/09(水) 10:40:12
すみません。超初心者です。
アクセス2000で昨日まで使用できていたものが今日使おうと開いたら
何もでなくなったのですが(アクセスのウィンドウが開くだけ・・・)
これって破損して修復は不可能なのでしょうか
昨日終了時、終了ボタンを押しても反応しなかったので連打し閉じました。

308 :名無しさん@そうだ選挙にいこう:2008/04/09(水) 18:22:57
壊れたときは"開くことが出来ません"うんたらかんたらのエラーメッセージが出ると思うけどな
何もメッセージが出ないなら、左下に最小化されてるとか
もしくは一度閉じて、Shiftを押しっぱなしで開いてみるとか。


>>304 やるじゃん。…俺には解らんけど

309 :名無しさん@そうだ選挙にいこう:2008/04/09(水) 21:29:30
【 システム環境  . 】 WindowsXP SP2, Access2003
【 VBAが使えるか .】 可
【 VBAでの回答  】 可
【 検索キーワード 】 mda、同時、複数、モジュール

サーバーにモジュールだけのmdaを置き、
複数のAccessのmdbから、参照設定でそのmdaのモジュールを使おうと考えています。

で、Aの端末でa.mdb、Bの端末でb.mdbを動かしても、大丈夫でしょうか?
Accessは複数の同時アクセスは苦手とか聞いたもので心配しております。


310 :名無しさん@そうだ選挙にいこう:2008/04/09(水) 22:04:58
>>304
やっと理解できますた

311 :名無しさん@そうだ選挙にいこう:2008/04/09(水) 23:33:27
>>309 Accessは複数の同時アクセスは苦手とか聞いた

データ書き換え時の排他ロックにおいて
Accessではレコードロックが実装されておらず
ページロックしか使えないことがその所以。

今回のようにモジュールを参照するだけであれば
データの書換えは発生しないはずなので大丈夫と思う。

312 :名無しさん@そうだ選挙にいこう:2008/04/10(木) 03:04:11
うん。問題ない。
だいたいAccess標準で組み込まれているUTILITY.MDAからして、
ローカルオンリーとはいえ複数インスタンスから共有される仕組みだし。

ただXPだかVistaだか、ネットワーク共有で激遅くなるOS側の障害なかったっけ。

313 :名無しさん@そうだ選挙にいこう:2008/04/10(木) 03:46:50
>>312 ネットワーク共有で激遅くなるOS側の障害

314 :名無しさん@そうだ選挙にいこう:2008/04/10(木) 03:55:21
↑すまん、間違って書き込んだ。

XPのサービスでWebDAVクライアント機能が標準では有効になっている。
このため共有フォルダ参照の際、WebDAV→SMBの順に問い合わせを行う。
結果、ネットワーク上にIISサーバーが存在しない場合やフィルタリング
ソフトの設定によってはWebDAVへの問い合わせが失敗するまでの
タイムロスが生じることがある。

この辺が分かりやすい。
ttp://www.monyo.com/technical/windows/41.html

315 :名無しさん@そうだ選挙にいこう:2008/04/10(木) 10:43:19
>>304
thanks

316 :名無しさん@そうだ選挙にいこう:2008/04/10(木) 11:21:22
【 システム環境  . 】 Windows XP Pro SP2 access2007
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 可
【 検索キーワード 】 mdb 読み込み エクスポート 絞り込み

┌───┬────┬───┬──┬───┬────┬─────┐
│ 納期 ..│発注番号│商品名│個数│ 単価 ..│  金額 .│ 出荷完了 │
├───┼────┼───┼──┼───┼────┼─────┤
│080408│00000010│MoraV.│  .1│ \2,000│  \2,000│  [   ]  .│
├───┼────┼───┼──┼───┼────┼─────┤
│080328│00000021│GGiCo.│  .2│ \8,000│ \16,000│   [√]   .│
├───┼────┼───┼──┼───┼────┼─────┤
│080405│00000080│M2Mor.│ .12│ \4,000│ \48,000│   [   ]  .│
├───┼────┼───┼──┼───┼────┼─────┤
│080410│00000084│UnMor.│  .4│ \5,000│ \20,000│   [   ]  .│
└───┴────┴───┴──┴───┴────┴─────┘

というmdbがありこれを出荷完了にチェックが入っているデータを除いた
金額の合計をテキストにエクスポート(この場合は "\70.000"というデータ一行のみ)
したいのですが、何か方法はありますでしょうか?よろしくお願いいたします。

317 :名無しさん@そうだ選挙にいこう:2008/04/10(木) 12:39:07
存在しないレコードをエクスポートしろとな

318 :名無しさん@そうだ選挙にいこう:2008/04/10(木) 13:25:24
>>316
VBAで集計してファイルに書き出す

319 :名無しさん@そうだ選挙にいこう:2008/04/10(木) 14:27:30
>>316
金額合計を集計する際のグループ化は不要なのか?
不要ならサマリ結果は常に1レコードになるわけで…

(1)集計選択クエリの結果をコピー&ペースト。
(2)集計テーブル作成クエリの結果を(ry
(3)マクロで作るなりVBAで作るなりお好きに
どのみち大した手間じゃない。

320 :名無しさん@そうだ選挙にいこう:2008/04/10(木) 20:16:56
>>316
2007ならデータシートで合計すぐに出るでしょ
右クリック、コピー、メモ帳、ペースト

321 :名無しさん@そうだ選挙にいこう:2008/04/10(木) 20:52:28
>>314
たしかに分かりやすかった。
アリガd

322 :名無しさん@そうだ選挙にいこう:2008/04/10(木) 21:05:07
【 システム環境  . 】 WindowsXP SP2, Access2003
【 VBAが使えるか .】 ○
【 VBAでの回答  】 ○
【 検索キーワード 】 コード、ブラックボックス、プロテクト

テーブルの中身や、モジュールのコードなど、
起動時に実行されるフォームからの作業以外をさせないよう、
プログラムでいうコンパイルされた形にしたいんですが、どういったやり方があるのでしょうか?

パスワードやmda作成ではちょっと違うし。。。


323 :名無しさん@そうだ選挙にいこう:2008/04/10(木) 21:22:18
テーブルは隠しファイルにし、MDEファイルで作成すればいいのでは?

324 :名無しさん@そうだ選挙にいこう:2008/04/10(木) 22:32:05
1.テーブルはパスワードで暗号化
2.パスワードはモジュールのコード内へ
3.配布はMDEファイルにする
これでいいと思う。

325 :316:2008/04/11(金) 17:38:35
>>318
すいません、VBAはあまり詳しくなくてどうすればいいのかさっぱりわかりませんorz

>>319
なるほど、手動ではできたので、マクロでやってみようと
「フィルタの実行」部分でフォームが見つからないといわれてしまいました…。
フォームってファイル名のことですよね?

「データベース構造の解析」を見てみる限りでは、
テーブル名しかなくフォーム名は空欄なのですが…。

>>320
ありがとうございます。
「フィルタ」機能と「シグマ」を使うことによって合計は出てきました。
しかしこれを自動化させたく、マクロをいじっているのですが、上記のエラーで…。

326 :名無しさん@そうだ選挙にいこう:2008/04/11(金) 20:59:13
データベース(hoge.mdb)に含むことができるオブジェクトは
テーブル,クエリ,フォーム,レポート,マクロ,モジュールの6種類。

・仮テーブルを生成する[テーブル作成クエリ]を作る。
・[テーブル]はテキストファイルへ[エクスポート]可能。
・[マクロ]を作るのであれば
//クエリを開く//(テーブル作成クエリ)
//エクスポート//(仮テーブルから目的のテキストファイルへ)

まずは基本を理解しる。

327 :名無しさん@そうだ選挙にいこう:2008/04/11(金) 21:39:10
桐とアクセすの違いについて調べています。(職場にどちらともあるので、どっちを使うかで迷ってる)

桐は、エクセルみたいな感じで直感的に使える感じが私はしました。
たとえばある列から、ある言葉を検索したければ、その列を列毎選択して「検索」するだけ。
同様に絞り込みも楽でした。
一度しぼりこんだものを、さらに絞り込むのも簡単でした。

ところがAccessは、なかなか検索とか絞込みがうまく出来ず…クエリと言う概念がいまいち
理解できません。

複雑なDBは作りませんし、単に業務の効率化のために使うので楽に使える方がいいのですが
自分のPCにはAccess、共用PCに桐がインストールされているため、できればAccessを使って
いきたいのですが、Accessではやはり「クエリ」という概念を理解しなくては使いこなせないでしょうか。

私みたいなDBが何ぞやも分かってない人間には、桐が無難ですか?

328 :名無しさん@そうだ選挙にいこう:2008/04/11(金) 21:46:15
>>327
桐買える金あるなら、桐にしとけ

329 :名無しさん@そうだ選挙にいこう:2008/04/11(金) 21:47:46
>>327

両方持っていて、しかも桐のほうが使いやすいというのであれば
迷う必要はない。
大抵の人は、Accessを使わざるを得ないから使っているだけ。
やりたいことが実現でき、かつ、利用者も問題ないのであれば
製作者が使いやすい道具を使えばいい。

330 :名無しさん@そうだ選挙にいこう:2008/04/11(金) 21:49:32
レスありがとう。

既に桐は職場のPCに1つだけインストールされてるんです。
一方、アクセスはどのパソコンにもインストールされてるんです。

なので、多分「自分のPCにも桐を入れたいから買って」といっても
「Access入ってるから駄目」と言われるのがオチなんです。

共用PCでの作業なので、多少の不便はあるけど、Accessはやはり難しいですかね。
使いこなせればすごいんでしょうけど、覚えながらやるような時間はないですし。


331 :名無しさん@そうだ選挙にいこう:2008/04/11(金) 21:54:05
AccessはWinnyで無料だけど、桐は高いど

でも普通は、Accessは台数分買うけど、桐はアクチベーションないから1つあれば (ry

332 :名無しさん@そうだ選挙にいこう:2008/04/11(金) 21:59:23
いやいや、PCへのインストールは情報管理部局しか出来ません。
シリアルは管理されてるので、複数台にインストールは出来ないんです。

それはさておき、やっぱりド素人には桐みたいですね。
Accessでデータの抽出って、なぜあんなに難しいんでしょう?
それとも本当は簡単にできるのかな?

たとえば、「案件名」から「○○」の言葉の入ってる行だけ抜き出す場合、桐だと「絞込み」という
ボタンを押して操作するだけです。
絞り込んだものからさらに「▲▲」を絞り込む場合も、同様の作業を繰り返すだけ。

Accessでも同じようにできます?それともクエリの概念が理解できてナイト駄目?
私のやり方がまずいだけで本当は簡単にそんなことできるんだよ、ってことだったら
Accessをもう少しいじってみたいのですが。

333 :名無しさん@そうだ選挙にいこう:2008/04/11(金) 22:03:47
比較対照があると大変だね。
Accessしか知らないのなら割り切れるんだろうけど。
327氏は選択肢があるようなことを言っていてその実
Accessしか選択肢がないのだから
必要であれば覚えるしかないだろう。
Accessのいいところは、本にしろネット上にしろ
参考にできるところがたくさんあることかな。

334 :名無しさん@そうだ選挙にいこう:2008/04/11(金) 22:04:08
で、どこまでが自演?

335 :名無しさん@そうだ選挙にいこう:2008/04/11(金) 22:08:34
>>332
Access2007ならかなり、絞り込み(フィルタ)簡単になったよ
でも、2段階以上重ねては出来ない

概略
桐は、現在見えてるデータを操作する
Accessは、大元のデータ(デーエタソース)を操作する

336 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 00:07:27
dateadd関数の使い方を教えてください。

[受付日]に日付を入れたら、自動的に[期限]に30日後の日付を入れたいのですがうまくいきません。
今やってることは、

  [期限]のプロパティ欄の「入力規則」とか「フォーカス移動時」とかのあらゆる箇所に
  =DateAdd("d",30,[受付日])と入れてますが、どこに入れても全く値を入れてくれません。

何か根本的に、間違ってるんでしょうか・・・

337 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 00:35:27
>>336

受付日が日付型なら、期限のコントロールソースに
=[受付日]+30
でOK。


338 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 00:51:35
ありがとう!

でも、そうしたら、テーブルの一覧の中にデータが入らなくなりました。。。
フォーム上では期限が出てますが、テーブルには入ってません。
コントロールソースには、テーブルのどこに入れたいかを記載しなくて良いのでしょうか?

339 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 00:58:00
コントロールを宛先のフィールド名にして、既定値を「=[受付日]+30」にすれば?

340 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 00:59:41
間違えた。[受付日]コントロール・フォーカス移動時にMe![期限]=[受付日]+30
でいけるはず

341 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 01:00:47
規定値を=[受付日]+30でやってみましたが、今度は常に同じ日にちとなり、
新規レコード追加で受付日を新しく入れても、期限が更新されませんでした。

342 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 01:04:58
テーブルに受付日があり、期限は必ず受付日+30日というルールであれば
期限のフィールドはそもそも最初から持つ必要がない。

これが理解できないと先々苦労することになるよ・・・

343 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 01:06:38
340さんのでやってみると、エラーが出てしまいました。

このオブジェクトにはMeは含まれません   らしいのですが。。。さっぱり理解が。。。

344 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 01:08:17
[期限]のフォーカス取得後→コードビルダ
------------
Private Sub 期限_GotFocus()
If IsDate([受付日].Value) Then
[期限].Value = DateAdd("d",30,[受付日].Value)
End If
End Sub
------------

ただし>>342の言うことは至極もっとも。
期限を表示するだけなら>>337の方法が使えるからね。

345 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 01:08:50
イベントプロシージャで、=は削除してMe!期限 = [受付日] + 30としたら
出来ました!ありがとう!

342さん、なぜですか?
エクセル感覚で使ってたら、さっぱり理解が・・・私には敷居が高すぎかもしれませんね。


346 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 01:10:15
期限を表示するだけというか、あとから「ある期限までの一覧」とかを
取り出したいのですが、それでも『期限フィールド』は不要でしょうか?

347 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 01:11:55
「ある期限までの一覧」と「ある受付日までの一覧」

348 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 01:12:16
同じことだと思わないか?w

349 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 01:15:02
つまり、
[期限]=[受付日]+30

と言うことは、受付日だけあれば期限は自動で定まる・・・ってことですか?

[受付日]フィールド
[受付日]フィールド+30 ←これが期限


だから、[期限]フィールドは不要てことかな??

350 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 01:18:12
その通り。

351 :336:2008/04/12(土) 21:46:50
何となく理解してきました。

私がやりたいのは、以下の通りです。
 ・受付日の30日後を期限として、対応を終わらせないといけない
 ・対応の決定には、決裁が必要
 ・期限までに決裁が終わっていない部署には、催促をかける必要がある

ここで、フィールドを[受付日][事案名][担当課][決裁(yes/no型)]としました。
クエリをつかって、
[受付日][事案名][担当課][決裁(yes/no型)][期限:[受付日]+30]とし、期限の抽出条件に
「<=[いつまでの期限?]」と入れました。

そうして、パラメータにたとえば「5/31」と入れると、期限が5/31までのものが出ますよね。

ここで1つ行き詰りました。
期限までにすでに決裁がyesであれば問題ないので、さらに[決裁]の抽出条件として
「チェックがついてないもの」としたいのですが、これをどう記載したらいいかわかりません。

手持ちの参考書になくて、ネットで見ても分からず。。。

何度も恐縮ですがよければ教えてくださいませ。

352 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 22:09:20
すみません、自己解決しました。

yesだと-1で、noだと0が入ってるんですね。これで抽出できました。

353 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 23:17:52
>>351
ちなみに、期限設定(受付日の30日後)は暦日でカウントですか?
営業日でカウントだとちょっと複雑になると思います。

354 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 23:25:24
まぁできたのであらばいいが、あんまりマジックナンバーは使用しないほうがいい。
yes/no型フィールドの規定値をFALSEにして、
チェックが付いているものはTRUEにするのが
プログラミングの基礎。
なぜかって言うと、仕様変更により-1、0じゃなくなる可能性もあるから。
もっとも、今回の場合は決済日(規定値として受付日+30日。変更可)を
持ってもいいかもしれない。
その辺はどのようなデータが必要かによるけどね。

355 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 23:27:45
期限設定は、単純に30日後にしました。
その日がもし休日なら、その次の平日が期限となるだけなので、それくらいはカレンダーを見れば
分かるかな、と。

解説書を見ながら、ちょっとずつクエリと言うのが分かってきました。
といっても、わたしのやりたいことは、非常に単純なので、テーブルも基本1つです。
(参照用のテーブルならいくつかありますけど)



356 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 23:30:39
>>354さん

0,-1はあまり使わない方がいいですか?
抽出条件を「yes」とするのも、同じ?

yes/noフィールドの規定値は変更できるんでしょうか。できるとすれば、そこを
FALSEとTRUEに変えればよいですか?

357 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 23:47:14
すでにデータが入っている状態でフィールドを増やしたのなら
Nullになっているかも。
これからデータを入れていくのなら規定値にFALSEと入れておけばいい。
こうしておけばSQL(クエリ)でもVBAでも使える。
どうせ、そのうち全てのチェックをはずしたいとか要求が出てくるだろうから
今のうち対処しておいてもいいと思うよ。


358 :名無しさん@そうだ選挙にいこう:2008/04/12(土) 23:56:08
厳密に言えば違うのだが、FALSEは0、Trueは-1のことだと思っていればいい。
ただそんだけの話。
その辺はAcceeのヘルプで「定数」を調べればいい。


359 :名無しさん@そうだ選挙にいこう:2008/04/13(日) 00:03:15
Yes/No型で、書式で「True/False」を選べたので、変えて見ました。

そしたら、クエリがうまく行かなくなりました。
実は、期限を延長することも可能で、延長した場合はさらに30日伸ばせます。
テーブルに、1つ「延長」(Yes/No型)フィールドを追加し、
クエリに

 延長後の期限: IIf([延長]=yes,[受付日]+60)


としてて、うまくいったのですが、ここを延長後の期限: IIf([延長]=True,[受付日]+60)
とすると抽出しなくなりました。これは、駄目ですか?

360 :名無しさん@そうだ選挙にいこう:2008/04/13(日) 00:17:55
>>359

いまさらだがVerは?

特に問題ないようだが。

361 :名無しさん@そうだ選挙にいこう:2008/04/13(日) 01:59:24
>>359
True→真
False→偽

まずIIF関数の使い方が間違っている。
IIF(条件式,値A,値B)
条件式の評価が「真の場合は値A」「偽の場合は値B」を返す。

以上を踏まえて選択クエリに次のフィールドを追加する。
期限: IIF([延長]=True,[受付日]+60,[受付日]+30)

[延長]=Trueという条件が
真(True)なら60日後が期限となる。
偽(False)なら30日後が期限となる。

さらに上記のIIF関数を
期限: IIF([延長],[受付日]+60,[受付日]+30)
のように書き換えても同様に動作することが分かる。

なぜ同様に動作するのかを考えると
True/Falseへの理解が多少は深まると思う。

362 :名無しさん@そうだ選挙にいこう:2008/04/13(日) 02:57:28
>>359
yesの部分を0にすればいいんじゃね?

noなら-1くぉ

363 :名無しさん@そうだ選挙にいこう:2008/04/13(日) 06:56:20
「=yes」も「=True」も通りそうな気がするが、その辺がダメっていうなら、
[延長]フィールド自体Yes/No型なんだから、[延長]だけで「=True」とか
付けなきゃいいんじゃね?

364 :名無しさん@そうだ選挙にいこう:2008/04/13(日) 11:05:32
だから桐にしとけと、、

365 :じゃまなボタン:2008/04/13(日) 11:25:21
もし可能であれば教えてください。

職場のACCESSが今月から2007に変わったのですが、テーブルを開いた時に表示される
フィールド名右側の並べ替え(▼ドロップダウン)ボタンが邪魔でしょうがありません。

公式HPをみると、フィルタや並べ替え強化が2007の新機能で売り、らしいですが
使う必要の無いテーブルには無意味なので、非表示にしようと検索したのですが
その方法がみつかりません。

あの並べ替えボタンは表示/非表示の切替はできないのでしょうか。
今回の強化機能なのでオン表示のみ、というならあきらめますが、
もし非表示にできるなら、方法を知っている方、お教え下さい。

よろしくお願いいたします。



366 :名無しさん@そうだ選挙にいこう:2008/04/13(日) 11:54:49
まあ生き残れるのは変化に対応できるやつだからそのままガマンして受け入れてるけど
確かにあれはジャマだなw

367 :名無しさん@そうだ選挙にいこう:2008/04/13(日) 13:35:20
>>365
うん、ランタイム環境で、その▼で並べ替えを実行しちゃうとデフォでは戻す方法がないんだ
並べ替えをクリアのリボンコマンドがランタイムでは表示されないから

俺も無効にしたい

368 :たまご酒 ◆vkjheMXAW2 :2008/04/13(日) 13:39:29
>>364
人が真面目に相談し、相談に乗っている中で、おまえのような話の腰を折る
馬鹿が使うDBが桐なのか?

消えろよ

369 :名無しさん@そうだ選挙にいこう:2008/04/13(日) 13:50:20
あと、分割フォームで単票フォーム部分とデータシート部分を行き来するショートカットキーとか
なんかありませんか?

370 :名無しさん@そうだ選挙にいこう:2008/04/13(日) 14:02:59
FileMakerにしとけ

371 :じゃまなボタン:2008/04/13(日) 14:47:32
366さん、367さん、ご返答ありがとうございました。

現状では非表示にすることは無理、ということですね・・・
仕方ないので、そのまま使うことにします。

オフィス2007のAPはリボンメニューに変わってすごく操作しづらい、
と思うんですが、私だけなんでしょうか?

2000から使用し始め、ある程度操作慣れしている自分には客観的にわからないのですが
あれは本当に初心者にわかりやすいメニュー構成なんでしょうか?
以前のメニューバーやツールバー形式の方が、シンプルで使いやすかった気がするのですが・・・

・・・質問ではなく、愚痴になってすみませんでした(´・ω・`)

372 :名無しさん@そうだ選挙にいこう:2008/04/18(金) 12:49:31
KeyPress(KeyAscii As Integer)

Enterキーをトラップしたい時には、KeyAscii に何を指定すれば良いの?

373 :名無しさん@そうだ選挙にいこう:2008/04/18(金) 13:25:30
13


374 :名無しさん@そうだ選挙にいこう:2008/04/18(金) 14:20:46
>>373
d

375 :ナオ:2008/04/19(土) 09:39:04
学校のPCに入ってるACCESSをUSBメモリにコ〇ーして家のPCに入れる事はできますか?
もし入れる事ができるならやり方を教えてください。

376 :名無しさん@そうだ選挙にいこう:2008/04/19(土) 09:49:30
>>375
http://trial.trymicrosoftoffice.com/trialjapan/product.aspx?sku=3121432&culture=ja-JP

377 :名無しさん@そうだ選挙にいこう:2008/04/20(日) 11:52:19
その時々のActiveContorolのプロパティを変更するにはどうしたら良いの?

378 :名無しさん@そうだ選挙にいこう:2008/04/20(日) 12:46:47
>>377
質問は正しい日本語を使いましょう

379 :377:2008/04/20(日) 14:21:42
focus

380 :377:2008/04/20(日) 14:25:43
enterイベントで、その時点でfocusを持ったテキストボックスのプロパティを変更したいんですけど、
Apllication.screen.activecontrolで該当コントロールを特定できるのは解りましたが、その後にどうしたら良いですか?

381 :名無しさん@そうだ選挙にいこう:2008/04/20(日) 15:50:27
プロパティを変更してみては?

382 :377:2008/04/20(日) 17:30:06
全部のテキストボックスで同様の操作して、後ほど別のイベントで元に戻したいんですけど
全部のテキストボックスのenterイベントに、全部のテキストボックスのプロパティ変更を記載すればできますが、、

必要なのは、その時点のActiveContorolのプロパティ変更だけで、、
全部のテキストボックスのenterイベントに記載するのは、仕方ないとして、
せめて、"Apllication.screen.activecontrol" & ".プロパティ" の様な記載で、当該アクティブコントロールのプロパティを指定変更できますか?

383 :名無しさん@そうだ選挙にいこう:2008/04/20(日) 20:53:40
>>382
桐にしとけ。
桐なら、ファミリってのがあって、コントロールをファミリにまとめて操作できるど。

384 :名無しさん@そうだ選挙にいこう:2008/04/20(日) 21:02:14
文字列じゃないんだから、括らなきゃいいだろ。

385 :名無しさん@そうだ選挙にいこう:2008/04/20(日) 21:40:09
えええええーーーーーーーーーっと
Apllication.Screen.ActiveControl.BackColor = RGB(&H84, &HA1, &HC6) とか出来るのかあ?
無理だろ

386 :名無しさん@そうだ選挙にいこう:2008/04/20(日) 22:05:46
例えば入力用フォームでマウスホイールが回ってしまっても
前後のレコードに移動しないようにするにはどうしたらいいですか?

387 :386:2008/04/20(日) 22:32:42
自己解決しました
スレ汚しスマソ

388 :名無しさん@そうだ選挙にいこう:2008/04/20(日) 23:37:21
>>387

解決法かけよ

389 :たまご酒 ◆vkjheMXAW2 :2008/04/21(月) 00:11:08
>>387
そうやって、解決した内容を書かずに消える君のような カス がいるから、ここでは
君のような、自分では調べもせずになんでも、人に聞いて楽しようとする馬鹿には答え
ないのだよ。

少しは礼節というものを知ったらどうかね?

390 :名無しさん@そうだ選挙にいこう:2008/04/21(月) 00:17:38
まあ386≠387の可能性も否定できないが

391 :名無しさん@そうだ選挙にいこう:2008/04/21(月) 07:57:16
【 システム環境  . 】 WindowsXP SP2 Access2007
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 可
【 検索キーワード 】 追加 ログ 追記 エクスポート

accessで以前エクスポートしたファイルに更にエクスポートすると上書きされてしまい、
以前のデータが消えてしまいますよね。
これをログみたいにどんどん追加していきたいのですが、そのようなことって
どうしたらできますでしょうか?よろしくお願いいたします。

392 :名無しさん@そうだ選挙にいこう:2008/04/21(月) 08:27:10
たまご酒 ◆vkjheMXAW2 って色々なスレでオバカ丸出しの書きこしてるのな。

393 :名無しさん@そうだ選挙にいこう:2008/04/21(月) 22:04:25
>>385
>えええええーーーーーーーーーっと
>Apllication.Screen.ActiveControl.BackColor = RGB(&H84, &HA1, &HC6) とか出来るのかあ?
>無理だろ

もちろん無理だ。
Apllicationなんてないから。
Applicationならあるけどな。

394 :名無しさん@そうだ選挙にいこう:2008/04/22(火) 08:22:57
>>393
Application.Screen.ActiveControl.BackColor = RGB(&H84, &HA1, &HC6) なら出来んの?

395 :名無しさん@そうだ選挙にいこう:2008/04/22(火) 08:36:14
出来る。

396 :名無しさん@そうだ選挙にいこう:2008/04/22(火) 20:00:46
>>391
出来ないと思うよ
ちなみに、どうしてもやりたかったら桐にしとけ、標準で可能だよ

397 :名無しさん@そうだ選挙にいこう:2008/04/22(火) 20:47:11
>>391
っていうか、エクスポートじゃなくて、追記という形でどんどんやればいいんじゃね?

Excelのオートメーションを利用するとか。
単純に、mdbもう一個用意してリンクテーブル、で、そこへInsert into * テーブル名で
次々に足しこんでいく。

そのもう一個のほうには、必要なものだけ、期間指定でもしてExcelで出せるようにして
おく。俺だったらこれでやる。

もうひとつは、おおもとのcsvデータを用意し、csv出力後、その大元のcsvと結合させる
VBAのコードを書く。これでいけると思いますよ。

398 :名無しさん@そうだ選挙にいこう:2008/04/22(火) 23:06:28
>>397
こんなんでやっとけ。

Currentdb.Execute "INSERT INTO [C:\Hoge\先DB.accdb].[先テーブル] SELECT * FROM 元テーブル"



399 :名無しさん@そうだ選挙にいこう:2008/04/23(水) 09:06:03
ヘルプの、"Enabled/使用可能" プロパティの説明、2007になっても可笑しいままだね

400 :名無しさん@そうだ選挙にいこう:2008/04/23(水) 12:51:35
>>391
エクスポート元のテーブルに全部のデータを残しとけば?
(てか、エクスポート先は何だ?「ファイル」ってくらいだからAccessではないと思うが、Accessなら…)


401 :名無しさん@そうだ選挙にいこう:2008/04/23(水) 13:17:05
組み込まれているAccess 2007 開発者用リファレンス
時々MSのサーバがサボってて繋がらないんだが、
どこかMSDNとかで見れるとこない?
あと、PDFにしとく方法とか?

402 :名無しさん@そうだ選挙にいこう:2008/04/24(木) 23:53:23
タブを切り替えたときのイベントってどこに割り当てればいいですか?

403 :名無しさん@そうだ選挙にいこう:2008/04/25(金) 08:37:46
タブに重ねてボタンを作って、on clic

404 :名無しさん@そうだ選挙にいこう:2008/04/25(金) 11:27:47
>>8->>9
この流れはいつ見ても茶吹くw

405 :名無しさん@そうだ選挙にいこう:2008/04/26(土) 12:46:48
>>402
2003までならふつうに変更時

406 :名無しさん@そうだ選挙にいこう:2008/04/28(月) 13:13:46
キーボードイベントで全角スペースをフックするには、どうすれば良いですか?
自動的にIMEオン設定のコントロールでスペースキーフックしたいんですけど。

407 :名無しさん@そうだ選挙にいこう:2008/04/28(月) 19:13:16
【 システム環境  . 】 WindowsXP, Access2003
【 VBAが使えるか .】 はい
【 VBAでの回答  】 可
【 検索キーワード 】 ページフッター 余白or空白 削除

現在レポートを出力する際に困っている点があります。
ページフッターの余白の部分を詳細(データ)に使いたいと思っています。
--1ページ目--
レポートヘッダ
ページヘッダ
詳細
詳細
ページフッタ
--2ページ目以降--
ページヘッダ
詳細
詳細
詳細
詳細

408 :名無しさん@そうだ選挙にいこう:2008/04/28(月) 19:14:48
ページフッターFormatのCancel引数に-1を入れて、ページフッターの
Heightを調節しても、表示はされないものの詳細部がページの下まで
出てくれないのです。
IF Me.Page = 1 THEN
Me.ページフッター.Visible = True
ELSE
Me.ページフッター.Visible = False
END IF
以上のような条件をページヘッダーで制御してもうまく出力して
くれません。
1ページのみページフッターを出力、そのほかのページは
ページヘッダー及び詳細のみのページ構成にしたい場合どのような
やり方がありますでしょうか?ご教授願いします。

409 :名無しさん@そうだ選挙にいこう:2008/04/28(月) 19:42:30
Access2007で、既定のコントロール スタイルってどこで設定するの?
つーか、既定のコントロール スタイル は無くなった?

410 :名無しさん@そうだ選挙にいこう:2008/04/28(月) 21:19:38
アクセスで簡単な管理DBを作成し、共有サーバにファイルを置き、
また専用フォームを開くためのアイコンを用意しました。

他の人のデスクトップにショートカットを作成したいのですが、
専用アイコンで立ち上げようとした場合、
アイコンの設定は自分が設定してあげるしかないでしょうか?
(アクセスアイコンのショートカットになってしまう。)




411 :名無しさん@そうだ選挙にいこう:2008/04/28(月) 22:22:14
>>410
うーむ

というか、共有サーバにおいて開かせるとあとあと問題になるから、やめておいたほうが。
それと、iconの設定が絶対パスになっているから、設定してあげないといかんと思う。

ちなみに、iconの設定はVBAで
CurrentDb.Properties("AppIcon") = CurrentProject.path & "\owata.ico"
ってな具合に設定すると由。

できれば、共有したいのならば、MySQLでもつかって、サーバを立てて、そこにテーブルを
つくり、それをリンクテーブルで今共有しているmdbのファイルの中のテーブルを置き換えた
らいいと思われます。ODBCはMyODBCをつかって、登録してからじゃないとリンクテーブル
が作れないです。

テーブルそのものは、MySQL Migration toolkitを使うとそっくりそのまま、mdbからMySQLへ
テーブルを移植できますよ。

412 :名無しさん@そうだ選挙にいこう:2008/04/28(月) 22:49:45
相談です。お願いいたします。

【OS】XP
【Ver】Access2002
【やりたいこと】
・請求者一覧テーブルとそれに対応した請求者一覧フォームがある
・請求者一覧テーブルのフィールドは
 管理番号(数値)、請求者氏名、連絡先、案件、・・・、処理終了日 など

たくさんあるデータの中で、「管理番号」で検索をかけたい。
具体的には、請求者一覧フォームのヘッダ部分にテキストボックス(管理番号検索)を配置し、そこに番号を入れて
コマンドボタンで抽出をするということをしたい。
ただし、テキストボックスが空だったら「番号を入力してください」というエラーメッセージを返す。

【やってみたこと】
1.マクロ
  条件 [Forms]![請求者一覧]![管理番号検索] Is Null → アクション「メッセージボックス」 
                                  → マクロの中止
                                  → フィルタの実行([管理番号]=[Forms]![請求者一覧]![管理番号検索])

  ★結果はメッセージボックスは出るけど、抽出は作動しない
  ★「マクロの中止」行を削除すると、抽出は作動するがテキストボックスが空でも、エラーメッセージを返したあと
   そのまま抽出を行う(当然、ヒットしないがフィルタはかかってる)


続きます

413 :412:2008/04/28(月) 22:52:31
2.コードのビルド

Private Sub コマンド385_Click()
On Error GoTo Err_コマンド385_Click

If IsNull([Forms]![請求者一覧]![管理番号検索]) Then
Beep
MsgBox "管理番号を入力してください", vbExclamation, ""


Else
DoCmd.ApplyFilter "", "[管理番号]=[Forms]![請求者一覧]![管理番号検索]"

End If
Exit_コマンド385_Click:
Exit Sub


Err_コマンド385_Click:
MsgBox Err.Description
Resume Exit_コマンド385_Click
End Sub


【結果】
抽出はするけど、エラーメッセージは返らない。
マクロのときと同様、テキストボックスが空でもフィルタがかかる


色々やっても分からなく、何時間も調べたり試したりです。
どなたか、アドバイスお願いします。
超がつく初心者なので、そもそもが的外れなことをやってたらごめんなさい。

414 :410:2008/04/28(月) 23:11:47
>>411

アドバイスありがとうございます。
直接触らせるのはやっぱ良くないですよね。

いろいろ参考になりました。

415 :名無しさん@そうだ選挙にいこう:2008/04/29(火) 00:28:14
>>410
データの整合性、もろもろを考えると、>>411が言うように
きちんとDBサーバーを立ち上げるのが正解。
DBエンジンはお好みで。
ただし複数ユーザーの同時使用の可能性が低いのであれば
ファイルサーバーに配置して共有するのもアリだと思う。

いずれの場合も各ユーザーはリンクテーブルを通して
DBの操作をさせるようにするのが原則です。

416 :名無しさん@そうだ選挙にいこう:2008/04/29(火) 00:40:03
MySQL・ポスグレ・オラクル等にODBCリンクテーブル貼って開発するケースと
SQL-Server(Express)に.adpでテーブル直リンクで開発するケース。

両方経験したことがあるのならDBエンジンお好みでとはとても言えない・・・

417 :名無しさん@そうだ選挙にいこう:2008/04/29(火) 02:59:11
>>412
If IsNull([Forms]![請求者一覧]![管理番号検索]) Then を
If Nz([Forms]![請求者一覧]![管理番号検索],"") = "" Then で。

>>416
あまり踏み込むとスレ違いになるなw

418 :407:2008/04/29(火) 11:03:21
ページフッターの余白に詳細を載せることは不可なんですか?

419 :名無しさん@そうだ選挙にいこう:2008/04/29(火) 12:21:47
メイン・サブフォームでサブフォームのキークリック時イベントを使いたいのですが、
メインフォームとサブフォームのどちらに設定するのが普通ですか?

420 :名無しさん@そうだ選挙にいこう:2008/04/29(火) 12:57:45
バグ大杉。

421 :名無しさん@そうだ選挙にいこう:2008/04/29(火) 20:59:08
テキストどおりにテーブルを作って
EXCELのデータをインポートしても、出来ないw

しかも、列幅打ち込んでも、勝手な数字に変換されちゃうし。

逆にエクセルのデータをインポートして
修正を加えようと思ったら、指示されていたテーブルと全然違うから
今度はクエリが組めないw

こんなんじゃVBAまでいけないわ。




422 :名無しさん@そうだ選挙にいこう:2008/04/29(火) 21:00:58
>>421
諦めろ

423 :名無しさん@そうだ選挙にいこう:2008/04/29(火) 21:11:22
>>421
桐にした方が良いよ
簡単確実高性能、高いけどね

424 :名無しさん@そうだ選挙にいこう:2008/04/29(火) 21:30:41
>>421
そんな君には、FileMakerがピッタリさ
簡単確実高性能で、どこかの和製DBと違って、メジャーだし、資料もサンプルも
豊富だよ。

425 :名無しさん@そうだ選挙にいこう:2008/04/29(火) 21:33:07
>>421
mdbとXlsうp

426 :名無しさん@そうだ選挙にいこう:2008/04/29(火) 21:37:06
FileMakerってサブフォームとかイベントとか出来るの?

427 :名無しさん@そうだ選挙にいこう:2008/04/30(水) 16:09:19
出来ない。
ファイルメーカーのリレーションも実は只のルックアップ。

428 :名無しさん@そうだ選挙にいこう:2008/04/30(水) 21:13:45
フォーム画面でフィルタ検索して表示された契約を、
ボタンクリックでフォームから単票にてレポート出力するには、
どうしたらよいでしょうか?

フィルタ検索された契約が複数表示されてしまいます。
市販の参考書にも調べた限りでは載っていないようでした。

429 :名無しさん@そうだ選挙にいこう:2008/04/30(水) 21:54:39
契約番号等のユニークキーで抽出してやれば?

430 :428:2008/04/30(水) 21:58:48
>>429

あいまい検索でヒットした契約から選択するのがベースなので、
複数結果をもつのが通常なのです。

フォームに単票表示しているものを印刷するだけだから
簡単そうなのですが、難しいですね。

431 :名無しさん@そうだ選挙にいこう:2008/04/30(水) 22:27:16
複票フォームでもキーは存在するでしょ?フォームからレポートを開くとき・・・

Docmd.OpenReport "レポート名" , , , "[キー1]='" & Me!キー1 & "' And [キー2]= '" & Me!キー2 & "'"…

432 :名無しさん@そうだ選挙にいこう:2008/04/30(水) 23:20:30
複数結果をもつのが通常ってきみ、
それをレコードソースにしたならレポートが複数になるのも通常でしょ…

433 :421:2008/05/01(木) 01:01:38

>>422

434 :421:2008/05/01(木) 01:05:26
>>422
事務系OLなので、諦めるわけにはいかないのです・・・

>>423
MOUSの資格をすべて揃えたいので、ACCESSが最後の一個なんです…

>>424
Filemakerですか、オプションの一つに考えます、
でも目下はACCESSなので・・・

>>425
各ファイルの拡張子をうpですか?
C:〜書き始めるということなんでしょうか。
バカで本当にすみません。

435 :名無しさん@そうだ選挙にいこう:2008/05/01(木) 01:10:37
>>434
はっきりいって、おまえが何をやっているのか、何ができないのか、さっぱり不明です。
バカでも分かるように説明しなさい。

436 :名無しさん@そうだ選挙にいこう:2008/05/01(木) 01:24:00
435
はい。すみませんmm
ACCESS2003のマスター教科書を買って独学でやってます。
これは、購入した教科書が指定するHPから、必要なデータを自分で
ダウンロードし、各章にあわせて、ダウンロードしたデータを使いながら
進めていくものです。

いま現在、メイン/サブフォームの作成を行っておりまして、
その中で、指定した「見積書」をテーブルで作成し、
そこにダウンロードしたファイルの中から、指定のexcelデータを
インポートするという、初歩的なことをやっています。

そこで、教科書どおりにテーブルを作り、ダウンロードしたEXCELファイルを
インポートしても、エラーが発生して出来ない。
ではEXCELファイルを新規のテーブルとしてインポートし修正を加えようと
するとさらにできない。




437 :名無しさん@そうだ選挙にいこう:2008/05/01(木) 01:29:37
>>436の続き

さらに、テーブルをつくったあと、
その中の一つのフィールドにルックアップ設定を手動で行うということになり
その指定が
表示コントロール:コンボボックス
値集合タイプ:テーブル/クエリ
連結列:1  ・・・

と続くのですが、
その中に
列幅:1.822cm;2.545cm;0cm;0cm
リスト幅:9.443cm

という指定があるのですが、
列幅に2.545cmと打ち込むと自動で2.547cmと変換されてしまい、
リスト幅も9.444cmと変換されてしまいます。

結局テキストどおりの指定のテーブルになっていないので、
インポートできないのかもしれません。



438 :名無しさん@そうだ選挙にいこう:2008/05/01(木) 01:44:24
そんなら試しに2.544cmて打ってみ。

つかそんなコンマ01_単位の違いで深刻なエラーとか発生しないからw

439 :名無しさん@そうだ選挙にいこう:2008/05/01(木) 02:07:18
>>436
Accessは教科書的なやり方だと、間違いなく挫折するよ。

むしろ、下手に最後にもってきてしまったのが痛い。他のアプリとは趣もなにもかも
違う。極めてデベロッパーな性格のソフトウェアだからね。

よって、ナニがしたいのか?どうしたら実現できるのか?こういう機能は乗せられない
のか?といった能動的な動きをしないと、そのひとつひとつは身に付かない。だいたい、
クエリをテーブルとして利用するみたいな基本とかが、あまり身に付いているように思え
ない。

Accessの肝はVBAにあらず。VBAはあくまで発展した用途の世界だ。VBAを使わずに
ある機能のみでつきつめるだけの努力がないと、資格もむずかしいと思われる。

440 :名無しさん@そうだ選挙にいこう:2008/05/01(木) 04:42:36
>>436
少なくとも、‘どのように’できないのか?くらいは具体的に教えれ。
エラーメッセージが出るのか、操作が分からないのか、結果がおかしいのか
アドバイスのしようが無いw

441 :名無しさん@そうだ選挙にいこう:2008/05/01(木) 07:09:02
おまいらOLには優しいのうwww

442 :名無しさん@そうだ選挙にいこう:2008/05/01(木) 09:50:06
実は40過ぎのオバハンだったり

443 :名無しさん@そうだ選挙にいこう:2008/05/01(木) 09:55:11
つか、MOUSなんかいらなくね?

444 :質問です:2008/05/01(木) 10:12:12
【 システム環境  . 】 WindowsXP, Access2003
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 否
【 検索キーワード 】 Excel2.0 開く Access2003

65000件を超えるExcelデータが、Excel2003じゃ65000件制限で切れてしまうのでAccessで開きたいんですが、Excelデータの方のバージョンが古すぎて(Excel2.0)開けません。
Access2.0を使えば開けるみたいなんで、試みてみたんですが、Access2.0自体がまともに動いてくれないので完全にお手上げ状態です。
Officeのバージョンを上げればExcelでも開ける様なんですが、今のところその予定はありません。
Excel2.0のデータをAccsess2003で開くのに、何かいい方法ってありますか?

445 :名無しさん@そうだ選挙にいこう:2008/05/01(木) 13:05:07
EXCELをCSVでエクスポートさせればOK

446 :名無しさん@そうだ選挙にいこう:2008/05/02(金) 14:00:03
>>444
ACCESSでインポートできないん?
メニューバーでファイル→外部データの取り込み→インポートで 65000件を超えるEXCELデータファイルを指定。


447 :名無しさん@そうだ選挙にいこう:2008/05/02(金) 14:43:06
>>444
>>445の言うcsvか、ヘルプ書いてにあるように
Lotus1-2-3形式に変換してからインポート

448 :名無しさん@そうだ選挙にいこう:2008/05/02(金) 15:31:50
お前らマジで頭悪いな

449 :名無しさん@そうだ選挙にいこう:2008/05/02(金) 18:37:08
>>444
2007の試用版使って変換しれ

450 :名無しさん@そうだ選挙にいこう:2008/05/02(金) 22:27:03
WIN2K
ACC2K

文字列を一文字づつ変数strに格納して次の処理するんだけども
A(丸囲み2)とかV(ローマ数字3)も処理されてまうのはACCの仕様?
えくせる子で同じコード書いたらちゃんと弾くのだが
なんでさ?


if (str > 0) and (9 > str) then
処理
end if


例外処理組み込むとかASCIIで指定するとか方法はあるんけど、理由がわからんの

451 :名無しさん@そうだ選挙にいこう:2008/05/02(金) 22:49:53
Option Compare Database

452 :名無しさん@そうだ選挙にいこう:2008/05/02(金) 23:08:38
>>450
変数名にstrとか使うな
文字列と数値を直接比較すんな
変数の型宣言しろ

あとExcelでは弾くってどういう意味?

453 :名無しさん@そうだ選挙にいこう:2008/05/02(金) 23:45:33
>>450
こんな無茶なコードでもExcelだと動くのか・・・ヘェー
>>451も言ってるが、Option Compareを宣言しないとBinaryモードで比較するから
そのあたりが関係してると思うが・・・>>452の言うことが正論だな。
Option Explicitも宣言する癖を付けた方がいいぞ。

454 :名無しさん@そうだ選挙にいこう:2008/05/02(金) 23:53:57
なるほどありがとう

今度試してみる

455 :名無しさん@そうだ選挙にいこう:2008/05/05(月) 20:12:49
access2000なのですが、教本に載ってる下記のファイルインポートコードがエラーになってしまいます。
2000ではどのように修正すれば、機能するでしょうか?

Private Sub cmbImport_Click()
Dim objFileDialog As FileDialog
Dim objItem As Object
Dim lngCount As Long
Dim i As Long
lngCount = 0
Set objFileDialog = Application.FileDialog(msoFileDialogOpen)

With objFileDialog
.Filters.Clear
.Filters.Add "Excel ワークブック", "*.xls"
.AllowMultiSelect = True
.ButtonName = "インポート"
.Show
If .SelectedItems.Count = 0 Then
Exit Sub
End If
End With
Me.Repaint
DoCmd.Hourglass True
For i = 1 To objFileDialog.SelectedItems.Count
Call sImport(objFileDialog.SelectedItems.Item(i))
lngCount = lngCount + 1
Next
DoCmd.Hourglass False
MsgBox lngCount & "個のファイルをインポートしました" _
, vbOKOnly + vbInformation, "処理結果"
End Sub


456 :名無しさん@そうだ選挙にいこう:2008/05/05(月) 21:15:49
Application.FileDialogって2000で使えたっけか?

457 :名無しさん@そうだ選挙にいこう:2008/05/05(月) 21:16:50
>>455
エラーメッセージの内容を晒してくれ

458 :名無しさん@そうだ選挙にいこう:2008/05/05(月) 22:25:15
FileDialogは2002からの機能だったはず。
Excelのライブラリ使ったりする方法もあるが、
APIでやるのが普通っしょ。

459 :455:2008/05/05(月) 22:42:48

エラー内容;メソッドまたはデータメンバが見つかりません。

→.FileDialogが問題のようです。


既存のロジック丸パクリで実装できると思ったのですが、
どこかに2000で流用できるものがないでしょうかね?


460 :名無しさん@そうだ選挙にいこう:2008/05/05(月) 23:14:54
>>459私初心者ですが、私ならファイル選択+APIでぐぐります

461 :455:2008/05/06(火) 07:09:20
>>460

やさしいヒントをありがとうございます!
いろいろ出てきてくわかりそうです。

462 :名無しさん@そうだ選挙にいこう:2008/05/06(火) 20:12:35
複数のテキストをボタン1つクリックでnullにしたいです
知恵を貸してください

463 :名無しさん@そうだ選挙にいこう:2008/05/06(火) 21:13:50
>>462

知恵も何も、更新クエリを使えばいいだろ。

464 :名無しさん@そうだ選挙にいこう:2008/05/06(火) 21:34:07
>>462
ボタンで起動するマクロ書いて

465 :名無しさん@そうだ選挙にいこう:2008/05/07(水) 14:12:14
これでいいんじゃない?

Private Sub Command_Click()
Me.text1 = Null
Me.text2 = Null
Me.text3 = Null
End Sub


466 :名無しさん@そうだ選挙にいこう:2008/05/07(水) 17:08:32
テキストってテキストボックスのことか。
非連結FormだったらFor〜Each〜NextでControlを総当たりするのだが。

467 :名無しさん@そうだ選挙にいこう:2008/05/07(水) 18:15:56
「複数」とは書かれているが、全てではないだろう。

468 :名無しさん@そうだ選挙にいこう:2008/05/08(木) 15:42:04
ここで「桐にしとけ」っていうのは冗談で言ってるのかと
思ってたけど、マジで言ってるやつが居そうだな。
桐にしとけってマジで言うなら、桐スレのURL貼って誘導しろよ。

469 :名無しさん@そうだ選挙にいこう:2008/05/08(木) 20:54:33
すみませんが教えてください。
あるテーブルの番号というフィールドに入力すると
別のテーブルにあるその番号に応じたデータが表示されるよう
クエリ、フォームを作成しました。
番号フィールドは両テーブルとも主キーです。
ですが入力しても、直ぐには表示されず、一旦フォームを閉じ開かないと表示されません。
なにが間違ってるか教えてください。

470 :名無しさん@そうだ選挙にいこう:2008/05/08(木) 21:42:28
更新後処理にMe.Requeryとでも入れとけ。

471 :名無しさん@そうだ選挙にいこう:2008/05/08(木) 22:52:23
【OS】XP
【バージョン】2003
【やりたいこと】
パラメータクエリの作成

ある端末の使用状況を、店舗ごとに集計するクエリを作っています。
下記の2つのテーブルがあり
T_端末使用状況
・日付(日付/時刻型)・・・日付と時刻が入る
・判定(テキスト型)・・・時刻によって「0」か「1」が入る
・端末名(テキスト型)

T_コード
・支店名(テキスト型)
・端末名(テキスト型)

これを基に下記のようなクエリを作りました。
(改行エラーが出るので一旦きります)

472 :名無しさん@そうだ選挙にいこう:2008/05/08(木) 22:52:55
Q_1(選択クエリ)
・日:Int([日付])
・時間:[日付]-Int([日付])
・判定/T_端末使用
・支店名/T_コード
・端末名/T_コード

Q_2(クロス集計クエリ)
・日/Q_1/グループ化/行見出し
・支店名/Q_1/グループ化/行見出し
・判定/Q_1/グループ化/列見出し
・端末名のカウント: 端末名/Q_1/カウント/値
・合計:端末名/Q_1/カウント/値

Q_3(選択クエリ)
日/Q_2
支店名/Q_2/Like [営業店]
合計/Q_2
0/Q_2
1/Q_2

このQ_3を実行すると、「'[営業店]'を有効なフィールド名、または式として認識できません。」というエラーメッセージが出てしまいます。
支店を指定して実行させる方法を教えてください。

473 :名無しさん@そうだ選挙にいこう:2008/05/08(木) 23:50:40
>>472
クエリ→パラメータで営業店のデータ型を指定していないような気がする。

474 :471:2008/05/08(木) 23:56:10
>>473
できました!
ありがとうございます。

475 :469:2008/05/09(金) 07:26:31
>470
やっぱり再クエリさせるしかないのですか。

両テーブルのフィールドが同じデータで主キーだと
直ぐに表示されないという仕様なのですね。なぜなのでしょう。

476 :名無しさん@そうだ選挙にいこう:2008/05/09(金) 07:47:42
画面(フォーム)の更新くらいに思っておけばOK

477 :名無しさん@そうだ選挙にいこう:2008/05/09(金) 10:37:41
>>452
なんで変数名にstrってつけちゃいけないの?

478 :名無しさん@そうだ選挙にいこう:2008/05/09(金) 11:55:38
同一名の関数があるからじゃね?
紛らわしい名前は避けるのが普通。自分の為にも他人の為にも。

479 :名無しさん@そうだ選挙にいこう:2008/05/09(金) 13:11:00
2007の分割フォームで、イベントで開く時にデータシート部分にフォーカス移動するにはどうすれば良いですか?

480 :477:2008/05/09(金) 14:59:59
>>478
Strって関数があるのか・・・知らないで使ってた

481 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 00:49:43
すみませんが教えてください。
OS=Win vista
ACCESS2000
目的 インポートエラーを無くす方法

csvデータをインポートする際に、なぜか10桁以上の数値はインポートエラーとなり、9桁以下の数値はインポートされます。
10桁以上の数値でもエラーとならずインポートされる設定がございましたら教えてください。
よろしくお願い申し上げます。



482 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 00:50:37
フィールド型が間違ってるんじゃないの?

483 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 01:09:00
>>481

482氏にちょい補足。
長整数型でも-2,147,483,648〜2,147,483,647までだよ。


484 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 01:15:09
>>481
仮にインポート先のフィールドが長整数型じゃなくてきちんと通貨型とかで定義されてても
その現象が発生する場合、解決する方法は・・・

ttp://pc11.2ch.net/test/read.cgi/tech/1064900050/565



答えようと思ったがこれ見てやめた

485 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 01:16:33
>>483氏にちょい補足。
Currency型を使ってくだされ。

486 :481:2008/05/10(土) 01:25:46
とても困っているので教えてください
インポート前に、設定が必要かと思いますが。。。。
インポート後の「テーブル」-「データ型」‐「標準」の「フィールドサイズ」は「長整数型」になっています。
インポート前にどこで「Currency型」を設定すればよいのでしょうか。

487 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 01:34:20
「フィールドサイズ」を「通貨型」(=Currency型)にしてくだされ。
あとマルチ投稿は大抵の場合、嫌われる行為なので遠慮してくだされ。

488 :481:2008/05/10(土) 01:50:51
マルチはもうやりません。

通貨型に変えて再度インポートしましたがだめでした。
どうすればよいでしょう。困りました。。。


489 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 02:09:20
テキスト型は?
484氏の解決方法が気になるが。

490 :481:2008/05/10(土) 02:17:41
テキスト型にしましたがやはりダメでした。。。。

491 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 02:32:50
ちなみに
「ファイル」→「外部データの取り込み」→「インポート」
の順で新規テーブルにインポートは?
その際、「設定」で該当フィールドを通貨型に変更することを
忘れずに。

492 :481:2008/05/10(土) 02:52:19
できた!!
うまくいきました。
お手数おかけしました。
ありがとうございます!!!!

493 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 08:20:54
すみませんが教えてください。
いままでアクセスでいろいろ作成しましたが、
全てクエリで結合しデータの表示
をするシステムで、リレーショナルシップの設定を一切してませんでした。
別に使えるのですが、これはなにか問題があるのでしょうか。


494 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 08:50:31
特に問題なし。
俺もリレーションは勉強中しか使ったことがない。
だが、余裕ができたら使ってみるのも悪くはない。


495 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 08:56:08
>>493
既にクエリで結合してるんだろ

496 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 09:54:26
クエリーでの数字の区切り方について教えてください。
OS vista
Vir 2007

テーブルに以下の数値があります。
9090
31700
82050

これをクエリーで、下3桁をなくして、
9
31
82
という数値に変えたいのですが、関数などございましたら教えてください。

EXCELだと、Roundown(「数値」/1000,0)というやり方でやれるのですが、ACCESSにはRounddown関数が無いようなのです。



497 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 09:56:46
>>496
ネットを検索スレばわかるが、AccessでRound関数を実現するモジュールを
公開している人は、すくなくとも2名いる。

探せばすぐでてくるよ。

へたなことするより、それを導入したほうがいい。

498 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 10:02:37
単純に下3桁なくしたいだけなら
x \ 1000
で商が求められる。


499 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 10:07:52
ゴメン。
クエリでだったか。

500 :496:2008/05/10(土) 10:09:39
VBAな大げさなものを使わなくてできる簡単な方法はありませんか?
単純に1000で割ると小数点以下が発生しますが、小数点以下を無くしたいです。


501 :496:2008/05/10(土) 10:14:50
検索して、自分で見つけました。
Int関数 Int([数値]/1000) で求められました。
みなさんありがとうございました。

502 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 10:15:59
int 関数を使え

503 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 10:20:13
>>500
だから、その程度の人間なんだから、すなおに、こいつでも入れておけばいいだろうが。

普通にRoundup,downなどが使えるっていってんだろうが。少しは検索することを覚えろ。カス

http://www.accessclub.jp/bibouroku/017.html

504 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 10:24:08
長整数の範囲なら498が使えそう。

505 :496:2008/05/10(土) 10:53:34
>>503
便利なものを教えていただいてありがとうございます。

他にお伺いしたいことがあります。
SQLとVBAを習得しようと思ってます。
SQLとVBAの違いはなんでしょうか。
SQLはACCESSのクエリー機能を組む時に使用する言語で、VBAはSQLで作成されたクエリーなどをマクロとして連続して動かすための言語というような認識でよいでしょうか。

またSQLという言葉はACCESS以外でも聞きますが、他でも使える言語なのでしょうか。それとも別モノなのでしょうか。
VBAはMSoffice製品に共通という認識でよいでしょうか。


506 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 11:14:05
よい

507 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 11:27:13
>SQLとVBAを習得しようと思ってます。
>SQLとVBAの違いはなんでしょうか。

それが何かわかってないのに習得したいとは思うんだ

508 :496:2008/05/10(土) 11:45:34
以前SQLを使ってました。もう忘れましたけど。
ACCESSは奥が深い分、奥を知ると便利な道具に変わるという実感を過去に得たことがあります。
ゆえに極めることは無理ですが、そこそこ好きなように使えるようになりたいと思ってます。


509 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 11:51:13
>>505
ほんとに検索しない野郎だな。どういう脳みその構造してんだ?

まず、SQLはデータベースで様々な検索、テーブルの結合・作成・削除など、まさにデータベースの
基盤そのものをいじくるための言語というよりも、コマンドだ。

一方で、VBAってのは、プログラミング言語であって、アプリケーションの挙動や、命令、処理、また、
コントロールするためのものだ。

Accessは、VBAの中でもSQL文を発行して扱うことはできるが、そもそも、Accessのクエリだって、SQL
ビューでみればSQLで書かれてんだよ。C/Sで背後にMySQLなんかを立てているなら、パススルークエリ
で直接、MySQLにSQL文を送ることだってできる。だがな、SQLってのは製品ですべて共通しているわけ
じゃない。方言があって、Accessで使っていたSQLがMySQLでそのまま通用するとは限らない。

VBAはそもそもSQLとはなんの関係もない。ただ、扱えるってだけの話で全く役目も違う。マクロはあくまで
自動化の処理のためのものであって、VBAはそれを叩けるだけの話だ。ボケ

510 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 12:28:17
>>509
検索する手間が省けたわ
また頼むぞ

511 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 13:20:19
口は悪いが実は親切な509タンなのでした。

SQL: Simple Query Language 元々はMSが提唱したクエリ作成言語
VBA: Visual Basic for Application アプリケーション向けBASIC言語

512 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 13:29:47
>>511
> SQL: Simple Query Language 元々はMSが提唱したクエリ作成言語

コーヒー吹いた www

513 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 13:34:36
>SQL: Simple Query Language 元々はMSが提唱したクエリ作成言語
wwwwww

514 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 13:53:41
>SQL: Simple Query Language 元々はMSが提唱したクエリ作成言語
ああああーーーーーっ

515 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 17:51:25
> SQL: Simple Query Language 元々はMSが提唱したクエリ作成言語
ttp://thumb2.uploda.org/file/uporg1415146.jpg

516 :496:2008/05/10(土) 18:47:54
>>509

ご親切に教えてくださいましてありがとございます。
とてもわかりやすく、大変参考になりました。
私もSQLとVBAを使いこなせるように頑張ります。
またわからないことがありましたらよろしくお願いします。


517 :名無しさん@そうだ選挙にいこう:2008/05/10(土) 23:19:46
下のようにデータを最新の日付だけのものにした
テーブルを作成しようと思ってます。


番号  名前 ポイント 日付
1     A    3    3/1
2     A    9    4/1
3     B    8    3/1
4     C    6    3/1
5     C    8    4/1
6     B    4    5/1


番号  名前 ポイント 日付
2     A    9    4/1
5     C    8    4/1
6     B    4    5/1


名前と日付だけのクエリで、名前をグループ化、
日付を最大にした集計は作ったんですが、
そこに番号とポイントを含めようと思っても、うまく行かないです。
諸先輩方教えてください。
環境WinXP,Accees2003

518 :名無しさん@そうだ選挙にいこう:2008/05/11(日) 01:12:12
>>517
名前と日付でひとつクエリを作って、
そのクエリとテーブルでもうひとつクエリを作る

519 :517:2008/05/11(日) 02:11:01
>>518
レスありがとうございます。
早速作ってみたのですが、下のようになってしまい混乱中です。
番号はひとまず置いといて、名前と日付の最大のクエリにポイントを
くっつけてみたらすべてのポイントが表示され、
しかもその日付が最大だらけです。


名前 ポイント 日付
A    3    4/1
A    9    4/1
B    8    5/1
C    6    4/1
C    8    4/1
B    4    5/1

520 :名無しさん@そうだ選挙にいこう:2008/05/11(日) 02:25:00
番号とポイントをどうしたいんだ?

521 :518:2008/05/11(日) 03:20:49
>>519
SELECT テーブル.番号, クエリ1.名前, テーブル.ポイント, クエリ1.日付の最大
FROM テーブル INNER JOIN クエリ1 ON (テーブル.名前 = クエリ1.名前) AND (テーブル.日付 = クエリ1.日付の最大)
ORDER BY クエリ1.名前;

522 :名無しさん@そうだ選挙にいこう:2008/05/11(日) 03:37:46
>>519
あのさ、おたく、頭の中にしまっているもの全部出したらどうよ?

全部説明もせずに人に質問して置いて、最大だらけってあんたの説明ならば
それであってるじゃないww

今も昔もそうだが、人に質問する時に、あとからあとから、小出しに出すのを
やめないと、今度は誰も答えてくれなくなるぞ

523 :名無しさん@そうだ選挙にいこう:2008/05/11(日) 11:43:13
>>521
ありがとうございます。
答えを書いてくれてあるんで、できて当たり前ですけどできました。

スレ汚してスイマセン。

524 :名無しさん@そうだ選挙にいこう:2008/05/11(日) 11:43:57
>>517
的確に伝えられないそんなアナタは、桐にしとけ
桐なら初めから単一化ってコマンドあるど

525 :名無しさん@そうだ選挙にいこう:2008/05/11(日) 21:23:31
>>515
画像消えてるので再うpお願いします

526 :名無しさん@そうだ選挙にいこう:2008/05/11(日) 21:40:43
>>525
松田勇作(探偵物語)がコーヒー吹き出してる写真

527 :名無しさん@そうだ選挙にいこう:2008/05/12(月) 02:50:44
>>525
ttp://blog38.fc2.com/y/yellowjack2005/file/20060702024235.jpg

528 :名無しさん@そうだ選挙にいこう:2008/05/12(月) 11:08:53
>>524
>>517は十分的確に伝えてると思うけど?
これを理解できない人が使うのが桐なんですか・・・


529 :名無しさん@そうだ選挙にいこう:2008/05/12(月) 11:35:05
>>528
>517 は最初から番号とポイントを含めてクエリ作れば良いじゃん
グループ化 ALL とか like"*" とか、、
Access2007だと、自動的に設定されるけど

これを理解できない人は、桐にしとけ

530 :名無しさん@そうだ選挙にいこう:2008/05/12(月) 12:02:13
桐ってなに?

531 :名無しさん@そうだ選挙にいこう:2008/05/12(月) 12:36:51
>>519
具体的にどうするの?

やってみたけどうまくいかん

532 :名無しさん@そうだ選挙にいこう:2008/05/12(月) 12:37:33
間違えた
上のレスは>>529

533 :名無しさん@そうだ選挙にいこう:2008/05/12(月) 12:45:49
おらも、桐にしとけに賛成だべ。

534 :名無しさん@そうだ選挙にいこう:2008/05/12(月) 12:57:40
まあ、何だな、、
最大値を求めるんじゃなくて、最大値を持つレコードを選択しないとな

535 :名無しさん@そうだ選挙にいこう:2008/05/12(月) 17:10:50
http://x7net.com/~access/images/dance_hall/dance04.gif

536 :名無しさん@そうだ選挙にいこう:2008/05/13(火) 01:10:40
WinXP、Access2003です。
フォームに表示されている内容をWeb上のフォームに貼り付けたいのですが、
住所、氏名、TELなどひとつずつコピーペーストするのが面倒です。
一気にコピーする方法はないですか。操作自動化のフリーソフトを使いましたが、
座標で記録されるため、その時々で座標がずれてうまくいきません。

537 :名無しさん@そうだ選挙にいこう:2008/05/13(火) 12:59:29
だから桐ってなに?

538 :名無しさん@そうだ選挙にいこう:2008/05/13(火) 14:17:13
桐とは、
このスレで質問したりして超苦労してる機能が全部簡単に出来ちゃう魔法のソフトらしい

539 :名無しさん@そうだ選挙にいこう:2008/05/13(火) 15:28:55
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【 システム環境  . 】 WindowsXP, Access2007
【 VBAが使えるか .】 はい
【 VBAでの回答  】 可
【 検索キーワード 】 Googleやヘルプでの検索キーワード

ACCESS2007のその他のプリンタを記憶してくれないホットフィックスを当てた
後くらいから、デザインビューやレイアウトビューでー、
オートフォーマットを指定した際にバックグラウンドの画像が切り替わってくれません。

あまり必要でない機能なので問題はないのですが、
ホットフィックス当てた方で同じ症状になっているかたいらっしゃいますでしょうか。

540 :名無しさん@そうだ選挙にいこう:2008/05/13(火) 15:30:28
オートフォーマットって元々バグってるでしょ
フィールド順が勝手に入れ替わっちゃう

541 :名無しさん@そうだ選挙にいこう:2008/05/13(火) 20:06:32
「桐にしとけ」でぐぐったらこのスレばっか

542 :名無しさん@そうだ選挙にいこう:2008/05/13(火) 20:21:17
>>538
ま、実際には、桐は殆どアプリケーション的なことができないけれどね。

Exxelの延長でしかない。

543 :名無し募集中。。。:2008/05/14(水) 11:25:09
しつもん

クエリの抽出の件なんですけど
07001〜07999
08001〜08999
09001〜09999
こういうデータがありまして
この中の
07501〜07999
08501〜08999
09501〜09999

みたいな##501〜##999
を抽出したいんですけど
Between "##501" And "##999"
とかじゃ駄目でした
どうすりゃいいか教えてください

544 :名無しさん@そうだ選挙にいこう:2008/05/14(水) 11:45:21
>>543
元データが数値型なら、
modで1000で割った余りを求めて、
500を引いた結果が、1〜499の範囲の物を求めればOK。

クエリ画面で作るなら、こんな感じ。
フィールド1:元にしたフィールド名(例えばhogehoge)
フィールド2:「適当なフィールド名: ([hogehoge] Mod 1000)-500」
        抽出条件として「Between 1 And 499」

元データが文字型なら、一度数値型に変換すればOK。
お試しくださいな。


545 :名無しさん@そうだ選挙にいこう:2008/05/14(水) 13:05:37
桐でアプリ組んでるお!
Accessの1/5の期間で開発できるお!
オラクルのフロントエンドも桐でしてるお!

546 :名無しさん@そうだ選挙にいこう:2008/05/14(水) 14:14:23
アクセスも桐に追いついてきてるぞ。
近年は、レコードロックも代替え背景色も出来るようになってるし、2007ではレポートも簡単になった。
日本語処理弱いのと、マウス必須なのはちょっとかなぁ。
バグは相変わらず多いけど w
まあ、それぞれ個性があって良い勝負ってとこで。

547 :名無しさん@そうだ選挙にいこう:2008/05/14(水) 15:15:36
ttp://www.kthree.co.jp/index.html

これか(・ω・`)
Accessでも「おお何コレスゲー!!」って感じな俺にはきっとAccessとの差はわからないんだろうなwww

548 :名無しさん@そうだ選挙にいこう:2008/05/14(水) 15:57:17
Access は継承とかファミリとかの概念がないからプロパティ設定がメイドイお!

549 :名無しさん@そうだ選挙にいこう:2008/05/14(水) 19:58:30
すみませんがおしえてください。
表形式のレポートを作成しているのですが、
フィルター適用させて、該当データーが全くないとエラー表示されてしまいます。
それをエラー以外の空欄でも0件でもいいのですが、表示させたいのです。
よろしくお願いします。



550 :名無しさん@そうだ選挙にいこう:2008/05/14(水) 21:01:27
IIfか条件付き書式でIsError=Trueの処理をしてやれば?
つか、Ver.ぐらい書けよ。


551 :名無しさん@そうだ選挙にいこう:2008/05/14(水) 23:15:33
2007のレポート簡単になったか・・・?

並び替えの設定がなんか前より面倒だしレコードソースをデザインビューから変更しても
なぜか保存されないし、そろそろキレそうだわ・・・

552 :549:2008/05/14(水) 23:49:35
>>550
ありがとうございます。
条件付き書式で回避するのですね。
と早速やってみましたが、エクセルのように
=IsError([項目名])
だと数式が不正ですとなってしまいます・・・。
違うのでしょうか。
バージョンは2003です。

553 :名無しさん@そうだ選挙にいこう:2008/05/15(木) 00:19:45
エラーの発生を前提にするんじゃなくて
エラーの発生を未然に防ぐ方向で考えるほうがいいんじゃない?

フィルタ適用後のレコード件数を事前にカウントしておいて
0件だったらその旨メッセージを表示してフィルタ適用しないとか。

554 :名無しさん@そうだ選挙にいこう:2008/05/15(木) 00:19:57
>>552

"="いらね。
条件書式は2000からの機能だからVer.を聞いた。



555 :名無しさん@そうだ選挙にいこう:2008/05/15(木) 10:32:05
これどうよ?
誰か使って使用感を報告しろ。

http://www.zoho.jp/service/zoho-db-reports.html
http://www.zoho.jp/service/zoho-db-reports.html

556 :名無しさん@そうだ選挙にいこう:2008/05/15(木) 11:10:40
>>555
テメェでやれカス

557 :名無しさん@そうだ選挙にいこう:2008/05/17(土) 01:30:33
すみませんが、おしえてください。
OS Vista  Version 2003 スキル 初心者

クロス集計結果をマクロでExcelにエキスポートする際に、指定のExcelシートにエキスポートするにはどうしたらよいでしょうか?


あらかじめ、Excelにシートを作ってあります。

A.xls
シート1
シート2
シート3

これを5月は、シート1にエキスポートします。
エキスポート後
A.xls
シート1 売上3000円
シート2
シート3

次の月にはシート2にエキスポートします。
A.xls
シート1 売上3000円
シート2 売上4500円
シート3

このように、Excelに指定のシートにエキスポートする方法がございましたら教えてください。
よろしくお願いします。

558 :名無しさん@そうだ選挙にいこう:2008/05/17(土) 10:24:22
そういや駅すぱあとってあったな

559 :名無しさん@そうだ選挙にいこう:2008/05/17(土) 12:43:34
>>557
マクロじゃ無理じゃね

560 :557:2008/05/17(土) 14:47:34
VBAでもかまいませんので教えてください


561 :名無しさん@そうだ選挙にいこう:2008/05/17(土) 15:00:01
Dim ExcelSheet As Object
Set ExcelSheet = CreateObject("Excel.Sheet")
ExcelSheet.Application.Visible = True
・・・
以下、頑張ってね

562 :557:2008/05/17(土) 19:57:28
>>561
すみませんが、全部教えてください


563 :名無しさん@そうだ選挙にいこう:2008/05/17(土) 20:40:46
具具ったらでるよ。

564 :557:2008/05/17(土) 20:43:14
>>563
何をキーにしてググれば出るのでしょうか?

565 :名無しさん@そうだ選挙にいこう:2008/05/17(土) 21:31:45
「ACCESS VBA EXCEL エキスポート」でググレ

566 :名無しさん@そうだ選挙にいこう:2008/05/17(土) 21:32:08

                | ̄``''- 、
                |      `゙''ー- 、  ________
                |    ,. -‐ ''´ ̄ ̄`ヽ、_        /
                |, - '´ ̄              `ヽ、     /
              /               `ヽ、ヽ   /
             _/                    ヽヽ/
           / / /   /  /  /            ヽハ
          く  / /!   |   〃 _/__ l|   | |   |  |  | | ||ヽ
           \l// / |  /|'´ ∧  ||   | |ー、||  |  | l | ヽ
            /ハ/ |  | ヽ/ ヽ | ヽ  | || /|ヽ/!  |/ | ヽ
            / |  ||ヽ { ,r===、   \| _!V |// //  .!   |
            | ||   |l |ヽ!'´ ̄`゙   ,  ==ミ、 /イ川  |─┘
            | ハ||  || | """ ┌---┐  `  / //  |
            V !ヽ ト! ヽ、    |     !    / //| /
               ヽ! \ハ` 、 ヽ、__ノ    ,.イ/ // | /
    ┌/)/)/)/)/)/)/)/)/)/)lー/ ` ー‐┬ '´ レ//l/ |/
    |(/(/(/(/(/(/(/(/(/(/│||      |\  〃
  r'´ ̄ヽ.              | | ト    /    \
  /  ̄`ア             | | |  ⌒/     入
  〉  ̄二) 知ってるが    | | |  /     // ヽ
 〈!   ,. -'                | | ヽ∠-----', '´    ',
  | \| |   .お前の態度が   | |<二Z二 ̄  /     ',
  |   | |               _r'---|  [ ``ヽ、      ',
  |   | |   気に入らない >-、__    [    ヽ      !
  \.| l.              ヽ、      [     ヽ    |
    ヽ|              \    r'     ヽ、    |

567 :名無しさん@そうだ選挙にいこう:2008/05/17(土) 23:54:14
あるモジュールの実行途中に最適化処理を行いたいのだけど、
VBエディタ上でコードを実行しているため
SendKeys "%tdc"
が利かない(そもそもVBEのメニュー上に"最適化/修復"が無いため)。
どうしたら良い?

568 :名無しさん@そうだ選挙にいこう:2008/05/18(日) 00:13:50
途中って、VBE上じゃなくても無理じゃね?

569 :名無しさん@そうだ選挙にいこう:2008/05/18(日) 00:16:46
そうなん?
ていうのも
テーブルデータの全削除
オートナンバーのリセット
を同時に行いたいからなんだけど、何か良い方法ないかな?

570 :567:2008/05/18(日) 00:19:23
・テーブルデータの全削除
・オートナンバーのリセット(←このために最適化)
・テーブルへ新規データをインポート
を一度に行いたいってことね。まじ困ってます。

571 :名無しさん@そうだ選挙にいこう:2008/05/18(日) 00:34:36
>>567
DROP TABLEでテーブルを丸ごと削除後、
CREATE TABLEにてテーブルを新たに作り直せば良いと思う。

572 :名無しさん@そうだ選挙にいこう:2008/05/18(日) 00:34:58
オートナンバーのリセットもコードで処理すれば良いのでは

573 :名無しさん@そうだ選挙にいこう:2008/05/18(日) 00:39:45
>>572
それどうやんの?

574 :名無しさん@そうだ選挙にいこう:2008/05/18(日) 00:45:19
最適化できたとしても、その時点でコードの実行は止まっちゃうからね〜

575 :名無しさん@そうだ選挙にいこう:2008/05/18(日) 01:14:24
>>573
ALTER TABLE テーブル名 ALTER COLUMN 型名 Counter(1) でいける。
>>567の方法でも可

576 :名無しさん@そうだ選挙にいこう:2008/05/18(日) 01:27:46
テーブルのオートナンバーを振りなおす方法(β版)

でいろいろ解説されています、ググってみ。

577 :573:2008/05/18(日) 07:50:59
>>575
ほーなるほどd
でも型名じゃなくて列名だね。>>567で可というのも???

578 :名無しさん@そうだ選挙にいこう:2008/05/18(日) 20:03:27
桐にしたら全ての難問が解決しますた

579 :名無しさん@そうだ選挙にいこう:2008/05/18(日) 21:55:02
漏れも、漏れも。全部解決したぞ。コンパイルできないけど。

580 :名無しさん@そうだ選挙にいこう:2008/05/19(月) 16:37:49
だな

581 :名無しさん@そうだ選挙にいこう:2008/05/19(月) 19:04:39
教えてください。
2000で作成したファイル(クエリ・マクロ含む)を2003で開くと、
なぜかクエリとマクロが動いてくれません。
これは仕様なのでしょうか・・・?

【 システム環境  . 】 WindowsXP, Access2000 2003
【 VBAが使えるか .】 はい
【 VBAでの回答  】 可
【 検索キーワード 】 access 2000 2003 クエリが 動かない

582 :名無しさん@そうだ選挙にいこう:2008/05/19(月) 21:26:30
仕様です

つーか、せめて内容くらい書けよカス!

583 :名無しさん@そうだ選挙にいこう:2008/05/19(月) 21:41:10
まあ仕様なんだけどマクロはともかくクエリは動くだろ・・・

584 :名無しさん@そうだ選挙にいこう:2008/05/19(月) 21:49:56
>>571
んなの簡潔に一行で書け。

「テーブルを一度削除して新たに作る」

585 :名無しさん@そうだ選挙にいこう:2008/05/19(月) 23:34:01
>>581
内容も書かずに、動く動かないほざくおまえのような馬鹿は死んで良いと思うよ。

そんな質問で、誰か答えられるとでも思っているのか?

おまえのような 馬鹿 は桐でもFilemakerでも使ってろよ。

586 :581:2008/05/20(火) 09:09:45
>>585
まあそんなに人を馬鹿馬鹿言わないでください^^;

でもまあ、バージョンがアップするとマクロが動かないことがあるってことが
わかったので感謝してますヨ

587 :名無しさん@そうだ選挙にいこう:2008/05/20(火) 10:46:18
>>586
うっせばーか

588 :名無しさん@そうだ選挙にいこう:2008/05/20(火) 19:24:18
>>581
スキルはさておき、セキュリティレベルが「高」なのでは?

589 :581:2008/05/20(火) 19:49:49
>>588
レスサンクス。それは解除してあります。

実はその後、マイクロソフトのサポセンで検索したら解決できました。
コード→デバックしたらマクロが動くようになりました。

590 :588:2008/05/20(火) 20:35:55
>>581
せっかくなので、その原因と解消方法を晒すとこのスレの価値が上がるとおもうんだけど。
「自己解決しました」と一緒だね。

591 :581:2008/05/20(火) 21:01:02
>>590
「名前が適切ではありません」というエラーが表示されていたんですよ。
サポセンで検索したらHITしました。
不要なコードを削除すればおk、と書いてあったのですが、よくわからなかったので
書いてあるとおりにしたらマクロが動くように。

592 :名無しさん@そうだ選挙にいこう:2008/05/20(火) 21:10:28
ACCESS2000のコントロールボタンを押すと
フィルタが開いて検索文字を入れるようにしたのですが、
IMEを当初からひらがな(変換あり)にはできないのでしょうか?
一般のフィールドと違って、プロパティにIMEコントロールの
設定がでてこないのですが。


593 :名無しさん@そうだ選挙にいこう:2008/05/20(火) 22:50:32
テキストボックスじゃないの?

594 :名無しさん@そうだ選挙にいこう:2008/05/20(火) 22:52:35
>>592
パラメータクエリじゃなくてさ、フォームでもつくってテキストボックスつくって
そこのキーワードをもとにクエリを開くように、クエリの抽出条件を設定した
ほうがいいよ。

それが嫌なら、ガッツでなんとかするしかない

595 :名無しさん@そうだ選挙にいこう:2008/05/20(火) 23:14:58
いや、優しさと思いやりで、何とかして欲しい

596 :名無しさん@そうだ選挙にいこう:2008/05/20(火) 23:29:27
コントロールボタンとはおそらくフォームに配置したコマンドボタンのことだろうと推理できるが
IMEのプロパティがない、つまり通常のテキストボックスではない「フィルタ」とやらの正体が
母さん全然わかんないわよ。

597 :名無しさん@そうだ選挙にいこう:2008/05/21(水) 01:39:20
自分も「フィルタが開いて」というオレ語で脱落。

598 :名無しさん@そうだ選挙にいこう:2008/05/21(水) 07:26:42
もしかしたら「フィルタ/並べ替えの編集」かも

599 :質問です1:2008/05/21(水) 09:57:51
【 システム環境 】 WindowsXp, Access2003
【 VBAが使えるか 】 いいえ
【 VBAでの回答  】 可
【 検索キーワード】 Access 集計 行と列

Accessに毎日記録しているデータがあります。これを月別に集計した表を作りたいの
ですが、列を月に、行を記録項目にするのは集計クエリでは不可能でしょうか。
自分でも調べて見ましたがクロス集計クエリだと行もグループ化する必要があるよう
なのですが行の項目はその項目全体だけでいい(むしろ全体だけがいい)のです。

調べ方が悪いだけで実はできるのか、クエリは無理でもレポートとかならできるのか、
諦めてエクセルにデータを貼り付けて行列入れ替えにするか、悩んでいます。



600 :質問です2:2008/05/21(水) 10:00:24
データは下の例えのようなもので、月の集計は項目ごとに合計したいだけです。

日付    マラソン ダンベル 〜
2008/05/19 5km    10分   〜

皆さんであればどうされますか(実際は仕事上のデータなので始めからエクセル使う
というのはナシで)。教えてください。よろしくお願いします。

601 :名無しさん@そうだ選挙にいこう:2008/05/21(水) 10:27:49
そういう処理は桐にしとけよ

602 :名無しさん@そうだ選挙にいこう:2008/05/21(水) 12:31:55
>>600
検索キーワード ユニオンクエリ

603 :名無しさん@そうだ選挙にいこう:2008/05/21(水) 14:02:12
accessを学び始める前で初心者にすらなっていないものです。

たとえば以下のようなものを作りたいのですが、
0から独学スタートすると大変でしょか?

出席番号を打って、(確認のために)生徒の名前等を呼び出し、
その生徒のテストの点を入力する。
また、次の生徒の出席番号を打って、生徒の名前等を呼び出し、
その生徒のテストの点を入力するというフォームを作る

といったものです。
ググラナイカスでスマソ


604 :名無しさん@そうだ選挙にいこう:2008/05/21(水) 14:57:12
>>603
作りたいものが明確であるほど習熟は早い。
いいんじゃないかと思うよ。

605 :603:2008/05/21(水) 16:49:49
>>604
ありがとんです!
思い切って、
アクセス初起動...してみます


606 :名無しさん@そうだ選挙にいこう:2008/05/21(水) 20:25:34
>>599
グループ化させたくないのならばキーを項目に入れてあげればいいじゃん。

607 :名無しさん@そうだ選挙にいこう:2008/05/21(水) 22:19:30
自己解決しました

608 :名無しさん@そうだ選挙にいこう:2008/05/21(水) 22:21:42
>>591
> 「名前が適切ではありません」というエラーが表示されていたんですよ。

何でそんなこと後で書くの?

   馬 鹿 ! ! ! ! 

609 :名無しさん@そうだ選挙にいこう:2008/05/21(水) 22:47:42
>>603
最初から生徒番号+名前の一覧が表示されててそこに点数だけドカドカ入力していくほうが
全員ぶんの生徒番号叩く手間がなくていいんじゃね?

脳内仕様が決定済で絶対その通りに完成させようとすると結構大変なことが多いよ・・・

610 :名無しさん@そうだ選挙にいこう:2008/05/21(水) 23:48:32
>>603
テーブル構成はM_生徒マスタ、T_点数テーブル。連続で入力し点数を反省させたいならフォーム上に非連結のテキストコントロールを並べて更新クエリーorADO
で書き込むのが早いかもね

611 :名無しさん@そうだ選挙にいこう:2008/05/21(水) 23:48:56
×反省
○反映

612 :名無しさん@そうだ選挙にいこう:2008/05/21(水) 23:50:14
そういうのは桐で入力すれば最強なんだが

613 :名無しさん@そうだ選挙にいこう:2008/05/21(水) 23:55:12
それ、反則。

614 :名無しさん@そうだ選挙にいこう:2008/05/22(木) 18:50:49
test

615 :名無しさん@そうだ選挙にいこう:2008/05/22(木) 20:05:41
【 システム環境  . 】 WindowsXP Pro, Access2003
【 VBAが使えるか .】 はい
【 VBAでの回答  】 自信なさスorz
【 検索キーワード 】 Googleやヘルプでの検索キーワード

はじめまして、グラフのことで質問があります。

フィールドに「得意先名」と「200804の売上」「200803の売上」があり、毎月フィールドを増やしています。
レコードが得意先の数あり、得意先が増えたときはレコードを増やしています。

本来は得意先の数のテーブルがあって、毎月レコードを増やすのが本当なのかもしれませんが、得意先が500以上あったため、立ち上げの時点でこのようなテーブルになりました。

それで、質問なのですが、時系列での売り上げの増減のグラフを描きたいのですが、フィールドを横に見る得意先別のグラフを作ることは可能でしょうか?
試してみたのですが、フィールドは6つまでしか選択できませんと出ます。
エクセルにエクスポートしてグラフを作ってみたのですが、毎月グラフを出すことを考えるとACCESS上でグラフが作れないものかと思い書き込みしました。

616 :名無しさん@そうだ選挙にいこう:2008/05/22(木) 20:07:09
[ACCESS2000]

サブフォーム付きのフォームから、
サブフォームの指定レコード(印刷フラグにチェック)を印刷したいのですが、
うまく印刷できません。

具体的には更新クエリの結果、印刷データをQ_Reportに出力し、
それをレコ−ドソースとするレポート(R_Report)を開くのですが、
クエリーにはデータが格納され、レポートも直接開くと
データが表示されるものの、

DoCmd.OpenReport "R_Report" で印刷してもデータが入らない状態です。

どのあたりに原因がありそうでしょうか?






617 :名無しさん@そうだ選挙にいこう:2008/05/22(木) 20:26:58
DoCmd.OpenReport "R_Report",AcPreviewではどう?

618 :名無しさん@そうだ選挙にいこう:2008/05/22(木) 21:29:16
>>615
>>本来は得意先の数のテーブルがあって、毎月レコードを増やすのが本当なのかもしれませんが
いいえ、さらにダメです。

まずは下記のようなテーブルに変換してください。

得意先識別名, 年月日, 金額
A社, 200802, 10000
A社, 200803, 10000
A社, 200804, 10000
B社, 200802, 10000
B社, 200803, 10000
B社, 200804, 10000
C社, 200802, 10000


619 :616:2008/05/22(木) 22:07:10
>>617

レスありがとうございます。
明日会社で試してご報告させていただきます。


620 :603:2008/05/22(木) 22:17:47
>>609
>>610
ありがとうございます!

>最初から生徒番号+名前の一覧が表示されててそこに点数だけドカドカ入力していくほうが
全員ぶんの生徒番号叩く手間がなくていいんじゃね?

何百もの枚数で、ランダムに出席番号が出てくるので。。。
(番号順に並べるのが番号入力より異常に大変)
ようやく、ぼんやりとどんなソフトかイメージがつかめました。

>フォーム上に非連結のテキストコントロールを並べて更新クエリーorADO
ありがとうございます。まだ、理解できてないですが、
フォーム上に非連結のテキストコントロールを並べて更新クエリーと
いうのに挑戦してみます!
これなら私のような初心者でもぎりぎり対応できそうな
希望がかすかにあるような錯覚をみました(いみふ)



621 :615:2008/05/22(木) 22:53:26
>>618

なるほど。やってみます。

ちなみに得意先の名前とリンクした得意先IDというのが、販売管理ソフトのSQLと連動してるんですが、何を主キーにすればいいでしょう。
オートナンバーを振ればいいですかね?

さらにそのあとはどうすればいいでしょう?
得意先全件を得意先ごとにA4の紙に、金額一覧とグラフを一緒にしたものを出力したいのですが・・・。


622 :名無しさん@そうだ選挙にいこう:2008/05/22(木) 23:04:54
>>621
> 【 VBAが使えるか .】 はい
って、マジか?

別にVBA使えなくても、何でもない基本なんだが

623 :名無しさん@そうだ選挙にいこう:2008/05/23(金) 07:30:06
ごめん。
普通に出来たわサンクス。

あと、売り上げと日付しか表示しないんで、無駄に縦に長くなるから2列とかに出来ないかなぁ。

624 :名無しさん@そうだ選挙にいこう:2008/05/23(金) 09:39:23
桐にすれば簡単だけど、
仕方ないからプリンタドライバの分割印刷機能使え

625 :名無しさん@そうだ選挙にいこう:2008/05/23(金) 09:48:53
>>623
2列できるでしょ?レポートの印刷設定

626 :名無しさん@そうだ選挙にいこう:2008/05/23(金) 13:20:22
レポート全体を2列にするのはそれでいいんだけど、入れ子の末端の中身だけ2列にした。

具体的に言うと、同じ得意先の中の売り上げの金額だけ2列にしたいなぁと。

627 :名無しさん@そうだ選挙にいこう:2008/05/23(金) 18:10:56
それこそ桐

628 :名無しさん@そうだ選挙にいこう:2008/05/23(金) 20:04:52
>>626
サブレポート

629 :名無しさん@そうだ選挙にいこう:2008/05/23(金) 21:07:25
とりあえず、今回は締め切りもあったんで、クエリで条件絞った後に必死でエクセルで作ってしまった。
1日かかったorz

来月のことを考えると、データベースで今からつくっとこうと思って。

桐ってそんなにすごいのか。

サブレポート?

630 :名無しさん@そうだ選挙にいこう:2008/05/23(金) 21:15:33
別に桐が凄いって訳じゃないでしょ。
大抵のことが安直にできちゃう。
ある意味、オラクルとかSQLサーバーとか未満は桐で間に合っちゃうけどな。
将来サーバー必要ならアクセスで頑張った方が良いぞ。

631 :名無しさん@そうだ選挙にいこう:2008/05/23(金) 22:01:55
あーそれそれ
ASP使ってwebからレコード更新するところまで作る予定なんで、一応access以外はあかんのだw

632 :名無しさん@そうだ選挙にいこう:2008/05/23(金) 22:04:18
じゃ、アクセス。

633 :名無しさん@そうだ選挙にいこう:2008/05/24(土) 00:32:35
>ASP使ってwebからレコード更新するところまで作る予定

おま・・・ サブレポート?とか質問してるレベルでどんだけ・・・

634 :名無しさん@そうだ選挙にいこう:2008/05/24(土) 11:06:45
>>633
ま、目標はデカイほどいいんじゃない?

多分できるようになるまで彼の場合3年は掛かるだろうけれどね

635 :名無しさん@そうだ選挙にいこう:2008/05/24(土) 16:15:15
IIS鯖はもう立ってるし、レコード追加のサンプル動くとこまでは試してるんで、レポートの作りこみ中でつ
ASP自体はそんなに抵抗ないんで、問題と思われ。
RDBが初めてで苦戦してるんだが、さすがに3年もかけてられん;;
1ヶ月で完成させる予定。

とりあえず、いろいろ本も漁ってみたんだけど、グラフのことを詳しく書いてるアクセスの本ってないねぇ。
いろいろ分かったんで、ありがとう!

636 :名無しさん@そうだ選挙にいこう:2008/05/24(土) 22:43:59
天才現る

637 :名無しさん@そうだ選挙にいこう:2008/05/25(日) 11:18:18
10人くらいでスケジュールDB(ACCESS)を共有利用する予定なんですが、
立ち上げ、停止をしているときにエラーを吐いたりすることがあります。
このエラーがでたとき、他の人が利用中のACCESSもエラーになってしまうのでしょうか?
たぶんエラーになると思うのですが、こういうのはどうやって回避するんでしょうか?

638 :名無しさん@そうだ選挙にいこう:2008/05/25(日) 11:33:03
>>637
>>608

639 :名無しさん@そうだ選挙にいこう:2008/05/25(日) 13:26:58
>>637
あのさ、AccessってパーソナルDBなの

そこんところわかってる?共有ってwww MySQLでも立ち上げて、リンクテーブルにでもして
使えば?ちょっと最初の段階から君、躓いているとしかいいようがないよ。

640 :名無しさん@そうだ選挙にいこう:2008/05/25(日) 13:40:25
MY SQLも結構スキル要するから小規模ならSQLEXPでいいんじゃね?

641 :名無しさん@そうだ選挙にいこう:2008/05/25(日) 16:07:01
まあダメなやつは何を使ってもダメなんですけどね

642 :名無しさん@そうだ選挙にいこう:2008/05/25(日) 16:11:52
>>640
>>641
いずれにせよ、このままにしておいたら、彼のDBは間違いなく、壊れる。
重要なデータなどを仕込んでいたら大変なことだ。

っていうか、AccessのDBを共有しようとする人間が後を絶たないな・・・・
せめて、SQLiteっていう思考にいくならともかく・・・

643 :名無しさん@そうだ選挙にいこう:2008/05/25(日) 16:47:09
責められるべきは共有しようとする人間じゃなくてAccessの共有機能だと思うが

644 :名無しさん@そうだ選挙にいこう:2008/05/25(日) 16:52:10
木に寄りて魚を求むといってな・・・

645 :名無しさん@そうだ選挙にいこう:2008/05/26(月) 12:14:38
>>635
Excel側にテンプレ作っといて、Accessからそこに吐き出す方向も考えてみた方が幸せになれるかもしれない。
レポートってオマケ程度の機能しかないように思える。

>>637
今、上司命令でXOOPSってのをいぢってるんだけど、面白いよ。
(間違ってもサイコーではないのだが)
スケジュール共有だけならもっと専門的なソフトがいくらでもある筈だけど、Accessじゃなきゃいけない理由でもあるんかね。

646 :名無しさん@そうだ選挙にいこう:2008/05/27(火) 01:00:46
GroupWatcherでええやろ

647 :名無しさん@そうだ選挙にいこう:2008/05/27(火) 16:33:21
access2000で何度かデータベースに挑戦したのですが、完全に理解できずに全然実用レベルに達しない私でも、access2007の新UIなら理解しやすいのかなぁって甘い事を考えてるんですが・・・どうでしょうか?
お金をドブに捨てるようなものですかねぇ・・

648 :名無しさん@そうだ選挙にいこう:2008/05/27(火) 16:44:59
>>647
新UIでも理解は同じ、桐にしとけ

649 :名無しさん@そうだ選挙にいこう:2008/05/27(火) 16:57:32
>>647
試用版を使ってみれば良いんじゃない。

650 :名無しさん@そうだ選挙にいこう:2008/05/27(火) 17:09:39
>>647
リボンなんちゃらはますますわかりにくい
てか理解できるかできないかは、そんなUIの部分には依存してないと思う


651 :名無しさん@そうだ選挙にいこう:2008/05/27(火) 19:42:59
>>647
あなたのいう理解うんうん部分は、UIとは関係ない部分なのだ

652 :647:2008/05/27(火) 22:35:18
そっすよねぇ・・自分でもそんな気がして躊躇してました。
入門書を読み進んでもリレーションシップ辺りでフラフラになります・・
一度試用版を使ってみます、ありがとうございました。

653 :653:2008/05/28(水) 10:24:36
【 システム環境 】 WindowsXp, Access2000
【 VBAが使えるか 】 はい
【 VBAでの回答  】 可
【 検索キーワード】 access oracle null

Accessよりoracle(10g)にODBC接続を行い、表形式にてテーブル内容を表示させています。
oracleのテーブル側の定義にて項目”商品コード”にプライマリKEY、notNull、属性char(4)で設定がされています。
この商品コードに通常であれば"aaaa"とか"bbbb"等の設定がされているのですが、データ表示後に未入力状態もしくは半角スペースで入力すると
"バリアント型ではない変数に Null値 を代入しようとしましたのメッセージが出力されてしまい変更できません。

フォーム上で半角空白を入力した場合、フォーカスが移動すると半角空白はクリアされてしまうのでしょうか?
もしそうならばそれを回避する方法はありますか?

だらだらとした文章ですみませんが教えてください。
よろしくおねがいします。

654 :名無しさん@そうだ選挙にいこう:2008/05/28(水) 11:18:54
そもそも、PrimaryKeyを手入力させるというテーブル設計そのものが間違っているな。




655 :名無しさん@そうだ選挙にいこう:2008/05/28(水) 15:06:02
>>653
フォーム上のTextBoxを使用する際に、
TextBox.Text と TextBox.Value の違いでトラブってる気がする。

フォーカスの移動としか書いてないから分かりかねるが
.Text <> .Value の状態ってのはあり得るからね。
.Text が半角スペース、.ValueがNullになっているんじゃないかな。

656 :名無しさん@そうだ選挙にいこう:2008/05/28(水) 22:49:05
エラーのメッセージは出るかもしれんけど
その後変更できないってことはないだろ

657 :名無しさん@そうだ選挙にいこう:2008/05/28(水) 23:46:51
Accessのテキストボックスが末尾の半角スペースをトリミングするのは有名。
半角スペースしか入力しなかったら、全部カットされてNullになる。
回避策は昔の話なんで忘れた。VarCharだったら""で空文字入ったような。

658 :657:2008/05/28(水) 23:54:44
読み直したら、何のヘルプにもなってないな。忘れてくれ。
あとテキストボックスだけみたいな書き方したけど、テーブル
直接入力でも一緒だからAccess自体がそういうつくりってことで。


659 :名無しさん@そうだ選挙にいこう:2008/05/29(木) 00:12:42
【 システム環境  . 】 WindowsXP, Access2003
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 可
【 検索キーワード 】 エクセルからACCESS 参照 等

仕事上で、製品に対して番号(製品番号)がありそれに付随するロット番号が1:1である状態で
今まではExcelで番号シートのみを管理し、報告業務として○○番の製品とロット番号(vlookup関数で検索)をエクセルの関数で処理していたんですが
製品番号自体のファイルだけでも膨大にあり、処理に遅延が発生する事や、この先単純にエクセル内に収まらない事があり
製品番号のエクセルをACCESSに移行させたんですが、
エクセルからACCESSに対してデータの参照を行う事はできますでしょうか?
ACCESS内には単純にテーブル内にフィールドとして製品番号 ロット番号 が入力されているのみなんですが・・・勉強不足で申し訳ないです。

----------------------
要点的にはエクセルのセルに製造番号を入力→Accessの該当テーブルに目的の製造番号を検索し付随するロット番号をエクセルの製造番号の横に入るようにする
という事をしたいのですが・・・

ACCESSは勉強中で本来なら理解した上で使用したかったのですが・・・エクセルが100M間近・・・他の業務に支障が出てきているので><
現時点では独力では時間的にせっぱつまっているのですいませんがよろしければお願いします。

660 :名無しさん@そうだ選挙にいこう:2008/05/29(木) 05:07:54
製品番号のエクセルをACCESSに移行させたんですが、
エクセルからACCESSに対してデータの参照を行う事はできますでしょうか?

できます
http://www.amazon.co.jp/dp/4774119954

661 :名無しさん@そうだ選挙にいこう:2008/05/29(木) 05:11:37
一番簡単な方法は桐を使うこと。
二番目に簡単な方法はエクセルからACCESSとか変なことしないでACCESSだけで完結させること。

662 :659:2008/05/29(木) 08:44:49
遅れました。レスありがとうございます。

>>660
ACCESS単体での本は購入しているのですが・・・
URLの冊子購入して更に勉強してからというのはかなり個人的にきつくて・・・

>>661
1、会社で既にあるのがACCESSで桐がないのと私自身の知識がないのと、たぶん会社のPCなんでソフトを購入しようにも理由は様々あるんですが了承されないと思われます。

2、これについては冊子も数点購入してますので勉強しながら順次移行するつもりで行うつもりです。

ただ私自身は>>659の業務だけなんですが他の方も別のエクセル等用いていて「はい、一括でACCESSで統合しました」というのはかなりきびしいです。
とりあえず今の時点だけでも、安易な考えですが製造番号とロット番号だけのエクセル・・・容量的にでかいしACCESSとしての機能を活用するというより収めるだけなら
こちらの方が後々、都合がいいなという現時点での考えです。

------------
この時点でもエクセルとの相互活用が私が思っているより難しいならあきらめますが、難しいか安易か・・それもわからなくて・・・

663 :名無しさん@そうだ選挙にいこう:2008/05/29(木) 12:01:37
難しくないけど、メンドイ、煩わしい
中途半端は、労多くして益少なし

664 :名無しさん@そうだ選挙にいこう:2008/05/29(木) 13:36:13
>>659
こんな感じでExcelの標準モジュールに。
Function GetLotNo(key As String) As String
Dim Conn As Object, Result As String
Set Conn = CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[mdbのフルパス]"
Result = Conn.Execute("SELECT [ロット番号のフィールド名] FROM [テーブル名] WHERE [製造番号のフィールド名]='" & key & "'")(0).Value
Conn.Close
Set Conn = Nothing
GetLotNo = Result
End Function

で、ロット番号を表示したいセルに
=GetLogNo([製造番号のセル])

パフォーマンスはわからん。すごく遅いかも。

665 :名無しさん@そうだ選挙にいこう:2008/05/29(木) 15:18:00
>>659
正直、Access一本にした方が他のスタッフの方も含めて便利だと思うんだけどなぁ。
大量データ+定型業務にはAccessが向く。
少量データ+不定型業務にはExcelが向く。
何事も使い分けだと思うよ。

666 :名無しさん@そうだ選挙にいこう:2008/05/29(木) 17:40:27
処理自体をAccessへ移行することはできるが
使い勝手はExcel同様というわけには行かないよ
Accessに合わせて手順を再構築しないと。

俺なら入力フォーマットをエクセルで作っておいて、Access上での処理
インポート→データ参照&加工→加工済データ吐き出し
をマクロかVBAで組んで自動処理させる。

667 :名無しさん@そうだ選挙にいこう:2008/05/29(木) 17:44:59
使い勝手もExcel同様にしたければ、桐かって貰え

668 :名無しさん@そうだ選挙にいこう:2008/05/29(木) 18:23:22
ぶっちゃけ、桐を買う金など無い。

669 :名無しさん@そうだ選挙にいこう:2008/05/29(木) 21:40:36
>>664
おまえ馬鹿だな

670 :名無しさん@そうだ選挙にいこう:2008/05/29(木) 21:56:23
理由は書けないけど(馬鹿だから)

671 :名無しさん@そうだ選挙にいこう:2008/05/29(木) 23:08:11
>>664
それならないだろ・・・常考

672 :664:2008/05/30(金) 00:03:28
すまんセルに入れるのは
=GetLotNo([製造番号のセル])
ね。

673 :名無しさん@そうだ選挙にいこう:2008/05/30(金) 05:21:51
製造番号参照するたび接続>切断を繰り返すのかよ・・・

674 :名無しさん@そうだ選挙にいこう:2008/05/30(金) 08:31:41
文句があるなら対案を示せよ共産党

675 :名無しさん@そうだ選挙にいこう:2008/05/31(土) 00:10:15
対案もなにも改善の余地ありって指摘してるだけだろうに・・・

676 :名無しさん@そうだ選挙にいこう:2008/05/31(土) 03:43:21
mdbの破損リスクを減らすために、パフォーマンスと引き替えに都度Open/Closeも有りの希ガス

677 :名無しさん@そうだ選挙にいこう:2008/05/31(土) 04:11:26
都度Open/Closeする方がよっぽど破損リスクが高まる気がするのは漏れだけ?

678 :名無しさん@そうだ選挙にいこう:2008/05/31(土) 05:58:11
参照しかしてないんだからそんなのどうでもいいだろ

679 :名無しさん@そうだ選挙にいこう:2008/05/31(土) 12:54:12
Openしたまま強制終了させるとLDBだけ残らね?

680 :名無しさん@そうだ選挙にいこう:2008/05/31(土) 17:30:48
残る。

まあ支障はないが

681 :名無しさん@そうだ選挙にいこう:2008/05/31(土) 22:00:12
クライアントが複数だったりとか、接続を維持しない方がいい場合もあるよねー
ケースバイケースでしょ

682 :名無しさん@そうだ選挙にいこう:2008/06/01(日) 20:39:15
やっぱ気分的にさ
身軽な時間が長いほうがいいじゃん
都度Open/Closeでいいじゃん

>>パフォーマンスと引き替えに
接続しっぱなしと比べて明らかにパフォーマンスが犠牲になったとか
そんな実感が得られるほどの違いはないよ
いや多分だけど

683 :名無しさん@そうだ選挙にいこう:2008/06/02(月) 00:18:27
普通は、そのままOpenしとく。

684 :名無しさん@そうだ選挙にいこう:2008/06/02(月) 00:37:44
>>683
それはどこの世界の普通?

685 :名無しさん@そうだ選挙にいこう:2008/06/02(月) 07:39:55
>>683
そういう場合って、いつCloseするの?

686 :名無しさん@そうだ選挙にいこう:2008/06/02(月) 08:24:59
>>685
Excelファイルを閉じる直前

687 :名無しさん@そうだ選挙にいこう:2008/06/02(月) 22:05:16
まさに>>663

688 :名無しさん@そうだ選挙にいこう:2008/06/02(月) 22:44:55
Workbook_BeforeCloseイベント

689 :名無しさん@そうだ選挙にいこう:2008/06/03(火) 20:24:11
開きっぱなしにしたところでこの手のプログラムでパフォーマンスは出ないよ

690 :名無しさん@そうだ選挙にいこう:2008/06/03(火) 22:01:08
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=[mdbのフルパス]"
で頻繁にフルパスmdbをシークするのか?
まあ、キャッシュは効くだろうが

691 :名無しさん@そうだ選挙にいこう:2008/06/03(火) 22:51:55
>>690
>まあ、キャッシュは効くだろうが
根拠は?

キャッシュしないとすると、数式を20個オートフィルすると
20回データベースを開いたり閉じたりするんだよね?

692 :名無しさん@そうだ選挙にいこう:2008/06/03(火) 22:55:25
だから、いちいちクローズしないで開きっぱなしにしろ、ってこと

693 :名無しさん@そうだ選挙にいこう:2008/06/03(火) 23:52:52
テキストファイル最強。
だって製品番号とロット番号だけのリストだもん。

694 :名無しさん@そうだ選挙にいこう:2008/06/04(水) 00:41:13
テキストファイルにはインデックスを持たせられない件

695 :693:2008/06/04(水) 01:01:49
入力時にソートを壊さなければ、バイナリサーチで十分。
ソートしないなら、ヘッダにハッシュのインデックス書き込んで
そっちのソートを保証すればいい。
まあAccessスレだから別にAccessでいいんだけど、ちょっと雑談。

696 :名無しさん@そうだ選挙にいこう:2008/06/04(水) 02:12:34
必ず番号順に入力するの面倒じゃん。
番号以外の項目設けて入力終わったら必ずそっち順にソートが必須とかもっと面倒じゃん。

アフォかと。

697 :名無しさん@そうだ選挙にいこう:2008/06/04(水) 20:10:11
Accessの複数あるテーブルの中身をそのまま
HTMLに変換してファイルを作成したいのですが
VBAを使う以外で方法ってありますでしょうか?

698 :名無しさん@そうだ選挙にいこう:2008/06/04(水) 20:23:10
メニューコマンドにあるだろ、HTMLへエキスポート

699 :名無しさん@そうだ選挙にいこう:2008/06/05(木) 16:20:12
賢人方のご経験、お知恵を拝借させてください。

ひとつのMDBを異なる言語のOS&ACCESSで滞りなく動かす方法&開発方法はありますか?

日本語のWIN XP&ACCESS2000でMDBを開発していたところ、
お客さんにそのMDBをアメリカでも中国でもフランスでも使いたいと言われ、
試したところ各国版のWIN XP&ACCESS2000(当然異なるPC)ではまともに動きませんでした。

ACCESSのVBAソースから日本語を全部削除&コントロール名を英字に変えたり、
OSの言語オプションを変えたりしたものの解決に至らず未だ暗闇のまっただ中です。。
(個人的にはアメリカ版のWIN XP&ACCESS2000で開発して他国版に配布がいいのかとあたりはつけてますが)

どうぞよろしくお願いします。

700 :名無しさん@そうだ選挙にいこう:2008/06/05(木) 17:29:28
日本語版のテキストボックスコントロールは英語版のそれと別物じゃないか?
IME制御プロパティとかあるし

701 :名無しさん@そうだ選挙にいこう:2008/06/05(木) 21:42:54
日本語版だけだからそんな面倒なこと考えなくていい桐にするといいよ

702 :名無しさん@そうだ選挙にいこう:2008/06/05(木) 21:53:31
桐はアメリカでも中国でもフランスでも動かない。

703 :699:2008/06/06(金) 12:01:55
>>700
なるほど、だからコントロールのイベントが動かないんですね。。
試しに英語版で作った簡単なフォームを日本語版で動かしたら動きました。(ただ正式な画面は作ってません)
かなり開発済みなので、振り出しに戻る(英語版で開発しなおす)のは避けたいところなんですが・・・。
ありがとうございます。

>>702
そう、桐は他国OSではうごかなさげなんですよね。

704 :名無しさん@そうだ選挙にいこう:2008/06/06(金) 20:11:35
動くんじゃねーの?
桐お得意の日本語文字列操作関数は無理だろうけど

705 :名無しさん@そうだ選挙にいこう:2008/06/06(金) 22:51:26
Accessのmdbファイルをサーバーへ配置して、複数のクライアントから
アクセスを行う時に、そのアクセスログを取得できますか?

706 :名無しさん@そうだ選挙にいこう:2008/06/06(金) 23:26:43
マイクロソフトがデータベース製品をACCESSとかSQL-Serverとか
なんで別々のに分けてるかというとだな・・・

707 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 11:13:57
>>705

また、ひとり馬鹿がでてきたか・・・・ 過去ログみて、まだmdbファイルの共有なんて
やろうとしているのか?話にならんな。

いつから、mdbファイルが共有できるような仕組みになったんだ?死ねよ

708 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 11:16:12
レコードロックは桐の方が、ややマシ
トランザクションは桐の方が、全然マシ

709 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 15:33:37
> いつから、mdbファイルが共有できるような仕組みになったんだ?死ねよ
あほ?

710 :Trader@Live!:2008/06/07(土) 15:45:27
>>709←こいつ最高にアホ こういうのが、mdbファイルぶっ壊すんだよなぁ

711 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 15:56:50
>>710
くるくるぱー?

712 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 17:10:08
>>705
無理。
監査使えるRDBMSに汁

713 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 17:13:14
あれ、サーバーにテーブルを置いてクライアントから書き込みってできなかったっけ?
ログの取得はわからないが。

714 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 17:23:31
>>713
問題なくできる

715 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 17:55:37
っていうかAccessって最初からファイル共有型データベースだよね

716 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 18:42:27
まあ、定義域関数とか使ってたらダメだな
カード型データベース程度の設計なら大丈V

717 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 19:06:30
MDBの最大の欠陥は、アクセスログが記録する仕組みがないという点である。
このため、操作履歴もわからず、またファイルが破損した場合、前回のバックアップ時点までしか復旧させることが出来ない。
こういった欠点を克服するには、アクセスログを記録する仕組みを独自に作成しなければならない。

718 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 19:31:49
一つのアクセスファイルをDBとして利用して
もう一つのアクセスファイルをクライアントとして利用したらどうなるの?

つまり、アクセスからSQLServerにODBCやOLEDBで繋ぐ代わりに
アクセスからアクセスに繋いだらどうなるんだろうなって

719 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 19:43:51
別にどうともならんだろ
結局バックエンドのmdbにはクライアントマシンがファイル共有でアクセスする訳で
Accessがクライアントサーバ型に変身する訳ではない

バックエンドとフロントエンドを分けると破損のリスクが減るとか言われてるけどね

720 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 19:48:19
>>706
SQL-Serverって大企業も十分カバーできる能力があるんでしょ?
中小企業の一部門の情報共有だったらアクセスでも十分なんじゃない?

721 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 20:02:32
>>720
だったら、MySQLなりPostgreSQLでも使えばいいだろ?

なんかデータベースそのものについての知識が欠落しているようだな。
スレタイよめるか?

722 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 20:28:39
お前こそスレタイ読めハゲ

723 :Trader@Live!:2008/06/07(土) 20:31:07
>>722
寝言は寝てから言えよ クズ

バックエンドになにつかおうが、てめぇが勝手にきめればいいだけのことだろうが。

つたない技術力で、くだらねぇ質問してんじゃねぇよ ハゲ

724 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 20:33:11
一応レコードロック装備して桐に追いついたから良いじゃん。
サーバー必要になるケースの繋ぎってことで。

725 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 20:57:13
Accessの共有にものすごい拒絶反応を起こす基地外が常駐してるねこのスレ

726 :名無しさん@そうだ選挙にいこう:2008/06/07(土) 21:03:28
>>723
つたないのはお前の脳味噌ですよ、お爺ちゃん

727 :名無しさん@そうだ選挙にいこう:2008/06/08(日) 00:14:10
>>718
そりゃ交通整理の部分を自前でゴリゴリに作りこめば理論上は安全な運用は可能だよ。
ゴリゴリ部分の労力がハンパないってだけでw

728 :名無しさん@そうだ選挙にいこう:2008/06/08(日) 00:39:40
Accessの操作がある程度できることを前提にDBの資格を取るとしたら何がいいでしょうか?
ORACLE MASTER Bronze を取得しようかとも考えているのですが意味無いですかね?

729 :名無しさん@そうだ選挙にいこう:2008/06/08(日) 01:18:54
>>699
> ひとつのMDBを異なる言語のOS&ACCESSで滞りなく動かす方法&開発方法はありますか?

難しいよ。
もう見たと思うけど。

ttp://support.microsoft.com/kb/404931/ja
ttp://support.microsoft.com/kb/815467/ja

上記をちゃんとやったからって動くとは限らないし。

> ACCESSのVBAソースから日本語を全部削除&コントロール名を英字に変えたり、
> OSの言語オプションを変えたりしたものの解決に至らず未だ暗闇のまっただ中です。。

関係あるかどうか知らないけど、フォームやレポートのセクション名は
もうチェックした?
セクション名は、日本語版だとデフォルトで「詳細」とか
「フォームヘッダー」とか日本語で名前が付く。セクション名って
あんまり意識しないかもしれないけど、これ放置すると別言語
環境に持っていったときに致命傷になるので、注意。

> (個人的にはアメリカ版のWIN XP&ACCESS2000で開発して他国版に配布がいいのかとあたりはつけてますが)

それが可能なんだったらそれが無難じゃないのかな。

730 :名無しさん@そうだ選挙にいこう:2008/06/09(月) 09:23:47
つか、日本語版Winを他言語で使ってもらった方がいいんじゃねーか?

731 :名無しさん@そうだ選挙にいこう:2008/06/09(月) 15:41:36
すべてのテーブルの半角カナを全角にしたいんだけどなんか方法あるかなぁ。
ただし、英数に関しては全角ではなく半角にしたいんだ・・・。

マクロで50音全部置換以外でなんかない?

732 :名無しさん@そうだ選挙にいこう:2008/06/09(月) 16:00:49
桐なら一発だから、いちど桐で読み込んで置換して、アクセスに戻す

733 :名無しさん@そうだ選挙にいこう:2008/06/09(月) 16:13:49
>>731
ググれば自作関数を使った方法とか
色々見つかる訳だが?

734 :名無しさん@そうだ選挙にいこう:2008/06/09(月) 18:56:17
>>730
それは無茶。
逆の立場だったら、あるMDBの開発環境が他言語OS上だからって
理由でOSを中国語とかフランス語とかに入れ替えてくださいって
言われて納得するか?w

735 :名無しさん@そうだ選挙にいこう:2008/06/09(月) 19:00:10
OSは余り関係ないでしょ、もともとWinは多言語対応だし、ロケールを設定を変更するだけでしょ

736 :名無しさん@そうだ選挙にいこう:2008/06/09(月) 19:32:29
クエリをエクスポートするときに
ファイルの種類の拡張子をHTMLにしたときにDBの内容がそのまま出力されますが
この状態だとデータの内容のみでヘッダが出力されません
エクスポートでHTMLを出力したいときにヘッダも出力したい場合どうすればいいのでしょうか?

737 :名無しさん@そうだ選挙にいこう:2008/06/09(月) 21:28:45
>>736
 □ 書式設定とレイアウトを保持したままデータをエクスポートする(W)
にチェック入れる

738 :名無しさん@そうだ選挙にいこう:2008/06/10(火) 14:19:17
"(0.1667)"
をtrueで通してしまうIsNumeric関数をどうにかしてくれ
カッコは数字なのか

739 :名無しさん@そうだ選挙にいこう:2008/06/10(火) 14:57:38
>>738
君は桐にしといたほうが良いよ

"(0.1667)" も "(1+3)*2" も true だ

740 :名無しさん@そうだ選挙にいこう:2008/06/10(火) 18:17:56
>>738
式が数値として判断できるかどうか?
なのでカッコは数式の一部とみなされるのでは?

まあ、数値判断は独自関数を作った方がいいと思う。

741 :738:2008/06/10(火) 19:03:38
>>カッコは数式
昼間は頭が沸騰してたんでついキレて書き込んだけど、言われてみればそのとおり
何か対応できるような関数考えます

742 :名無しさん@そうだ選挙にいこう:2008/06/10(火) 21:22:35
?IsNumeric("(1+3)*2")
これ手元の2002と2007で試してみたけどFalseだったぞ。
"1+2"でも"1*2"でも結果はFalse

"(123)"はTrueだけど ?CCur("(123)") とすると結果が -123 で
?CCur("(0.01)")だと -0.01

なんでカッコでくくるとマイナス評価されるのかよくわからん・・・

743 :名無しさん@そうだ選挙にいこう:2008/06/10(火) 21:33:01
>>カッコは数式
Excelを使ったことのない人向けのネタです。
本気にしないように。

744 :名無しさん@そうだ選挙にいこう:2008/06/10(火) 22:40:56
IsNumeric(.5)=True

なんというか…MSだなぁ

745 :名無しさん@そうだ選挙にいこう:2008/06/10(火) 23:01:58
やっぱ桐にするしかないな

746 :名無しさん@そうだ選挙にいこう:2008/06/10(火) 23:18:55
.5 は 0.5 なんだから別にいいんじゃね?

747 :名無しさん@そうだ選挙にいこう:2008/06/10(火) 23:20:06
いや、全角みたいだぞ

748 :名無しさん@そうだ選挙にいこう:2008/06/11(水) 00:09:05
>>747
全角の5をVBEで使えるかっ

749 :名無しさん@そうだ選挙にいこう:2008/06/11(水) 00:40:01
半角だろうと全角だろうとCInt()やCLng()やCCur()可能な文字列であれば
全部IsNumeric()=Trueで別に困らないよ。

750 :名無しさん@そうだ選挙にいこう:2008/06/11(水) 09:49:10
>>742
例えばさ、Excelで通貨書式を設定するとき、負数の表示形式サンプルがあるじゃない。ある程度Officeで共通なんじゃない?

751 :名無しさん@そうだ選挙にいこう:2008/06/11(水) 16:31:56

なあ、accessってホモっぽいと言ってるやつがいたんだが・・・
お前らどう思う?

access
http://www.access-web.jp/





752 :名無しさん@そうだ選挙にいこう:2008/06/11(水) 20:16:12
IsNumeric(".5")
でしょ

753 :名無しさん@そうだ選挙にいこう:2008/06/11(水) 20:47:54
IsNumeric(";´Д`")

754 :名無しさん@そうだ選挙にいこう:2008/06/12(木) 21:25:55
超基本的なことで済まない

DCount関数なんだが、以下の環境の時に、以下の条件でレコードを抽出したい

商品テーブルにおいて
IDをカウントしたい 
抽出条件は、商品分類が1 - 10あるなかで、1と2と3を抽出したい。

このとき、フォーム上で、非連結のテキストボックスのコントロールソースに書く
DCount関数の式が知りたい。なかなかうまくいっていない

DCount("ID","商品",[商品分類] = 1 or 2 or 3)だとうまくいかない。

755 :名無しさん@そうだ選挙にいこう:2008/06/12(木) 21:43:37
商品分類が数値型なら
=DCount("*","商品","商品分類=1 Or 商品分類=2 Or 商品分類=3")

商品分類がテキスト型なら
=DCount("*","商品","商品分類='1' Or 商品分類='2' Or 商品分類='3'")

756 :名無しさん@そうだ選挙にいこう:2008/06/12(木) 22:11:47
質問を2つ
1つ目
オブジェクトの「クエリ」で新規作成で選択クエリでテーブルと全く同じ内容のものをクエリとして作成した場合
その出来たクエリについて並び替え(降順昇順)だけを操作不可にしたいのですがどうすればいいのでしょうか?
・テーブルで開いた場合は並び替えは実行可能
・クエリで開いた場合は並び替えは実行不可


2つ目
オブジェクトの「テーブル」に存在するテーブルについて
フォームのボタン(VBA?)一つで
存在する全てのテーブルの内容をExcelに置き換えたいのですが
その場合どうすればいいのでしょうか?

イメージとしてはいわゆる一つ一つエクスポートでExcelに変換を一気にまとめて作成する感じです

お願いします

757 :名無しさん@そうだ選挙にいこう:2008/06/12(木) 22:32:54
1つ目 >テーブルと全く同じ内容のものをクエリとして作成
意味のないことすんな。

2つ目 >(VBA?)
この時点で君にはむりぽ。

758 :名無しさん@そうだ選挙にいこう:2008/06/12(木) 22:58:57
>>756
おまいは桐にしとけよ
許可作業って設定項目が、あらかじめ用意されてる

759 :名無しさん@そうだ選挙にいこう:2008/06/12(木) 23:04:21
>>755
ずまん。助かった。ありがとう。根本的な勘違いをしていたようだね。

サンキュー

760 :名無しさん@そうだ選挙にいこう:2008/06/13(金) 00:22:50
>>756
for each next と  DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel11
とかを使えばできそうな気がするが、問題はExcel(2003)の最大行数が65,536という制限があるということだ。
遅かれ早かれそのアイデアは破綻するだろう。text 形式でexportするほうが無難といえる。






761 :名無しさん@そうだ選挙にいこう:2008/06/13(金) 15:58:57
>>759
もう見てないかもしれないが、IN や BETWEEN〜AND という書き方もあるよー。
'1と2と3
=DCount("*", "商品", "商品分類 IN (1,2,3)")
'1〜3
=DCount("*", "商品", "商品分類 BETWEEN 1 AND 3")

762 :699:2008/06/13(金) 19:09:16
>>729
ありがとうございます。
ロケールの変更もしてみましたが、やっぱりダメでした。。

あ゛、確かにフォームなどのセクションには「詳細」とか「フォームヘッダー」とかいう名前が勝手に付きますね(汗)
セクション名を変えてみます、ありがとうございます!

>>730
こちらもまずそれを提案したんですが、現地でそこの国の人が各個人に割り振られたPCでのみ使うので却下されました。。

PS.遅くなってすみません、なぜかここ数日書き込み制限されてました。。

763 :名無しさん@そうだ選挙にいこう:2008/06/13(金) 19:56:45
>>761
お そのほうがスマートだね。

こういったような条件式の指定ができるってのをもうちょっと勉強しなくてはいかんね。
ありがとう。早速書き直してみる。

764 :名無しさん@そうだ選挙にいこう:2008/06/14(土) 21:00:54
品名、場所、数量というテーブルから

品名のグループ化、場所1の個数、場所2の個数
↑というクエリを作りたいんですけど、まったくわかりません。誰か助けてください。

765 :名無しさん@そうだ選挙にいこう:2008/06/14(土) 21:11:43
>>764
品名:[品名]| 場所1の合計:Sum(IIf([場所]="場所1",[数量],0))| 場所2の合計:Sum(IIf([場所]="場所2",[数量],0))
グループ化| 演算 | 演算

766 :名無しさん@そうだ選挙にいこう:2008/06/14(土) 21:42:35
アクセス2003のスクロールバーについての質問です。

リストボックスにデータを沢山入れた場合にスクロールバーが出ますが
そのスクロールバーのつまみを掴んでドラッグしてスクロールさせる場合、
デフォルトの設定だと「つまみを離す」までスクロールの結果が表示されません、
これを「つまみの移動中」にダイナミックにスクロールさせる設定等はあるのでしょうか?


767 :名無しさん@そうだ選挙にいこう:2008/06/14(土) 21:49:40
>>765
おお、ありがとーございます。

768 :名無しさん@そうだ選挙にいこう:2008/06/14(土) 22:33:20
>>766
デフォルトで駄目なら設定を変えれば

769 :名無しさん@そうだ選挙にいこう:2008/06/15(日) 21:29:31
サブ関数にテキストボックスの参照を渡して、
その関数の中で値を変えようとしているのですが、うまくいきません。

Call FuncA( Me![テキストボックス名] )

Private Sub FuncA(ByRef textboxTarget As TextBox)
' ↓ここで値を変えたいが、textboxTarget の値がNullになっている
textboxTarget.Value="HogeHoge"
End Sub

ちなみに同じ様な事をリストボックスでやった場合には思った様に動きました。
Private Sub FuncA(ByRef listboxTarget As ListBox)
<以下略>

調べてみると、テキストボックスの参照を得ようとした場合、
そのテキストボックスに入っている文字列が取得されてしまっているような気がします。
何かやりかたがおかしいのでしょうか?
正しいテキストボックスの参照の仕方をご教示願えないでしょうか?



770 :名無しさん@そうだ選挙にいこう:2008/06/15(日) 21:43:58
普通に値が変化するけど。何をしたいのかがよく分からない

771 :名無しさん@そうだ選挙にいこう:2008/06/15(日) 21:47:10
すいません。自己解決したっぽいです。。。

772 :名無しさん@そうだ選挙にいこう:2008/06/15(日) 21:59:37
ここの質問者は自己解決ばっかりだな

773 :名無しさん@そうだ選挙にいこう:2008/06/15(日) 22:24:10
しかもどう解決したのか書かないから、何の役にも立たないログになるな。

774 :名無しさん@そうだ選挙にいこう:2008/06/15(日) 22:30:33
鳥つけないから本物かどうかも疑わしいが

775 :名無しさん@そうだ選挙にいこう:2008/06/15(日) 22:31:55
txtboxTarget_ChangeイベントあたりでtxtboxTarget.Valueを参照したらNullだった。
FuncAを呼び出すタイミングをAfterUpdateあたりにしたら上手くいった。
こんな感じに解決したと想像。

776 :名無しさん@そうだ選挙にいこう:2008/06/15(日) 23:58:00
>>773
で、結局おなじような質問が来た時に、答えなければいけない。

777 :名無しさん@そうだ選挙にいこう:2008/06/16(月) 13:22:09
答えなくても自己解決します。

778 :名無しさん@そうだ選挙にいこう:2008/06/17(火) 07:50:18
新たに顧客管理のDBを






自己解決しました。

779 :名無しさん@そうだ選挙にいこう:2008/06/17(火) 17:05:18
すみません。
VBAのコードからプロジェクトにロックとパスワードをかけることは可能でしょうか?
もちろんパスワードの入力にはInputBoxを使いますが、
配布直前にVBAのコードでロックをかけられたら修正が入るたびにパスワードを入力する手間を省けられるなぁと思いまして。
(なんとなく無理っぽな気はするんですが。。)

780 :名無しさん@そうだ選挙にいこう:2008/06/17(火) 20:09:10
けっきょく変数をPublicにするメリットってのは、なに?
いちど宣言すればあとはいちいち断り入れなくても使える、それだけ?

いつでもあんたのモノをぶち込まれてあげる
でも次に会うときはあんたとやってこともおぼえてないかも(プ

そゆこと?

781 :名無しさん@そうだ選挙にいこう:2008/06/17(火) 20:11:50
他から参照できる

782 :名無しさん@そうだ選挙にいこう:2008/06/17(火) 20:50:29
逆にPrivateにすると同じ変数名で使い回しがきくんじゃね?

783 :名無しさん@そうだ選挙にいこう:2008/06/17(火) 20:58:37
>>780
Accessの場合、他のフォームとか、クエリとかで使い回しする、もしくは、
どうように使える例があるので、

そういう場合には、Publicにするなぁ。ファンクションプロシージャみたくね。

本当にそのフォームだとかクエリでしか使い道がないようなものの場合
にだけ、Privateにしている。でも、メンテナンス性とか考えると、やはり、
Publicで宣言するケースが大半を占める。

784 :名無しさん@そうだ選挙にいこう:2008/06/17(火) 21:24:29
また明日もどの場所でどんな値が放り込まれてるかわからない
Public変数だらけのソースを追いかける仕事がはじまるお・・・

785 :名無しさん@そうだ選挙にいこう:2008/06/17(火) 21:40:32
>>779
「SetVbaPassword」でググってみたら。

786 :名無しさん@そうだ選挙にいこう:2008/06/17(火) 21:41:33
ありゃー?Public変数の話はDB板の方でしてたんじゃなかったかのう?

787 :名無しさん@そうだ選挙にいこう:2008/06/17(火) 21:45:27
俺よりできないやつがうようよいるスレだ

788 :名無しさん@そうだ選挙にいこう:2008/06/17(火) 23:12:15
だいたいポインタの概念ないBASICのくせに無理やりコンパイル出来るようVBA作るから、こういうメモリの取りあいが生じる
桐のようにインタプリタのまま使えば問題生じない

789 :名無しさん@そうだ選挙にいこう:2008/06/17(火) 23:20:29
それは鶏と卵

790 :名無しさん@そうだ選挙にいこう:2008/06/17(火) 23:38:45
ポインタの概念が無いとコンパイラは無理矢理になると?
なんじゃそりゃ

791 :名無しさん@そうだ選挙にいこう:2008/06/18(水) 08:19:12
実行しながらインタプリタがメモリ配置を制御できるでしょ

792 :779:2008/06/18(水) 11:24:52
>>785
ありがとうございます、こんなものがあったなんて!
ググッた結果が数件しかヒットしなかったのにも驚きです。


793 :名無しさん@そうだ選挙にいこう:2008/06/18(水) 20:11:21
>>791
話がつながってない
論理的に頼む

794 :名無しさん@そうだ選挙にいこう:2008/06/18(水) 21:30:14
インタプリタがグローバル変数配置されてるメモリ避けながら、空きアドレスで以後のプログラム命令や変数確保を実行できるでしょ
コンパイルしちゃってたら実行時にどのメモリアドレスで命令実行するか選べないでしょ、イベントドリブンとか時々よって実行する命令分岐するし

795 :名無しさん@そうだ選挙にいこう:2008/06/18(水) 23:58:34
ああ、駄目だこいつ

796 :名無しさん@そうだ選挙にいこう:2008/06/19(木) 00:28:00
日本語でおk?

797 :名無しさん@そうだ選挙にいこう:2008/06/19(木) 00:34:24
理由は書けないけど(バカだから)

798 :名無しさん@そうだ選挙にいこう:2008/06/19(木) 06:24:34
> インタプリタがグローバル変数配置されてるメモリ避けながら、空きアドレスで以後のプログラム命令や変数確保を実行できるでしょ
空きアドレスでプログラム命令を実行する?は?

> コンパイルしちゃってたら実行時にどのメモリアドレスで命令実行するか選べないでしょ、
何を言っているんだか。メチャクチャだよ。
仮にそうだとしても、グローバル変数のアドレスもコンパイルした時点で選べなくなる、つまり問題にならないだろ

> イベントドリブンとか時々よって実行する命令分岐するし
だから何?

で?「ポインタの概念」はどこ行った?

799 :名無しさん@そうだ選挙にいこう:2008/06/19(木) 07:37:56
鶏と卵

800 :名無しさん@そうだ選挙にいこう:2008/06/20(金) 13:01:17
すいません
すごい初心者的な事をお尋ねしたいのですが、、、
ACCESSのテーブルの表示が#になって困っています
フィールドの幅を広げると通常の表示に戻るのですが内容が全部入りきらない時に限り#になってしまうのですが
以前までは普通に#でなく通常のあるべき表示だったのですが最近急に#になってしまって

検索しても原因がわからないのでもしよろしかったらこの状態を直す方法教えていただけませんか?

801 :名無しさん@そうだ選挙にいこう:2008/06/20(金) 16:42:08
http://www.f3.dion.ne.jp/~element/msaccess/AcTipsFrmHowToLimitComboListWhenInputOnly.html

こちらにある方法でコンボボックスの絞込みを行ったのですが、マウスカーソルを絞り込みたいコンボボックスの上に置くとちらつきが発生してしまいます。OSはVistaです。

フォームは日付、コンボ1、コンボ2の順に並んでいて、コンボ2のフォーカスを取得したときに、Me![コンボ2].Requeryを行うようにしてます。

802 :名無しさん@そうだ選挙にいこう:2008/06/20(金) 19:38:51
ふつうはフォーカス時にはしないと思うが?
コソボ1の変更後とかさ・・・

803 :名無しさん@そうだ選挙にいこう:2008/06/20(金) 20:43:59
>>800
ツール>オプション>データシート>既定の列幅を変える

804 :名無しさん@そうだ選挙にいこう:2008/06/20(金) 21:58:25
フォームのチェックボックスがOFFの場合は全部表示して、ONの場合は
ONのものだけを表示するクエリを作りたいのですがうまくいきません。

IIf([Forms]![フォーム1]![チェック0],True,○○)

○○のところになんと書けばよいのでしょうか?
「True Or False」だとうまくいきませんでした。

805 :名無しさん@そうだ選挙にいこう:2008/06/20(金) 22:16:44
>>802
えっと、ではどういうときに?
移動時とコンボ1が変わったとき?

806 :名無しさん@そうだ選挙にいこう:2008/06/20(金) 22:35:18
>>804
1.もう一度IIf関数のヘルプをよく読む
2.抽出クエリって何なのかをもう一度よく考える。

807 :名無しさん@そうだ選挙にいこう:2008/06/20(金) 22:36:07
>>801
サンプルを落として2000形式に変換してみたけど、WindowsXP上だと別にちらつかなかった。
サンプルは97形式だから、かなり昔のだよね。Vistaとか想定されてないんじゃね?

サンプルもちらつくんなら、手法の限界じゃないの。
サンプルは大丈夫だけどマイDBがダメってんなら、何か違うことやってるんじゃないの。

808 :名無しさん@そうだ選挙にいこう:2008/06/20(金) 22:37:42
代替背景色使ってるとチラツクな

809 :名無しさん@そうだ選挙にいこう:2008/06/20(金) 22:48:35
代替背景色…ってAccess2007からの新機能だっけ?
そりゃ完全に参照先ページの対象外だな。
なんか2007の新機能使えば同じことがもっと簡単にできるとかないかね。

810 :名無しさん@そうだ選挙にいこう:2008/06/20(金) 22:59:00
>>805
コソボ1の更新後処理 (AfterUpdate) で
コソボ2.Requery として抽出するとか

811 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 00:47:23
>>806
True Or Falseを直接抽出クエリに書けば全部表示になるんですが、
IIf関数を使用するとTrue だけとかFalseだけしか動作しません。
なぜでしょうか?

812 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 00:56:58
>>810
それでやってみたのですが、今度はどのコンボボックスを選んでも更新したときの項目が表示されるようになってしまいました。ちらつきのほうはまったくない。

813 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 01:10:29
>>807
こちらでは50件ぐらい追加して、同じような操作をしたらちらつきました。でも、操作できないほどではなくて・・・フォームの違いなんでしょうか?(サンプルでは絞り込むのに使うコンボボックスは同じですが、こっちのほうはレコードごとに分かれます)

814 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 01:35:15
>>812
より詳細にコードまで含めて提示するか
エスパーの登場に期待してください

815 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 01:36:56
>>811
ぬるぽ

816 :807:2008/06/21(土) 03:03:15
>>813
サンプルに50件追加してみた。ちらつかなかった。ただしAccess2003。

> (サンプルでは絞り込むのに使うコンボボックスは同じですが、こっちのほうはレコードごとに分かれます)
それは作りが違うんじゃないか。
サンプルで検証しても意味が無い希ガス。
どっかの炉に上げてみたら。

817 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 03:59:38
>>804
チェックボックスの更新時イベントで・・・

If Me!チェックボックス = True then
Me.Filter = "OnOff=True" 'OnOffフィールドがTrueのものだけ抽出
Me.FilterOn = True
Else
Me.FilterOn = False      '抽出条件をオフ
End If

818 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 10:52:07
>>817
すでにフィルタの処理を利用しているフォームに追加したいのです。
その方法だと他の人が作ったものに書き加えないといけなくて・・・
クエリでやったら元をコピーしておけば簡単に直せますし、そちらの
方が便利だと思ったのですが、なぜIIfの中に入れるとうまく動作
しないのでしょうか?

>>804
>>811


819 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 11:27:22
>>818
IIf([Forms]![フォーム1]![チェック0],[OnOff]=True,[OnOff]=True Or [OnOff]=False)

820 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 11:37:01
>>818
Accessは表計算ソフトではありません
再問い合わせ (Requery) なしにクエリの再計算は行われません

821 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 11:59:58
>>818
[OnOff]を聞いてきて動作しませんでした。

>>820
Requeryはやっています。


822 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 12:02:02
>>821
いやだから[OnOff]はあんたの使用しているフィールド名を書かないとそりゃ動かんわな

823 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 12:02:27
いろいろ試した結果、-1 以上を抽出とかやることで解決しました。

824 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 12:03:23
気が付いたら、Accessばかりつかっていて、Excelを殆ど使っていなかった
ことに気が付く今日この頃ですが、みなさんはいかがお過ごしですか?

825 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 12:06:38
結局Excelってデータ量が6万ちょいしか扱えないから、データの保管・InOutはAccessに任せ
他人にデータを渡す時だけExcelって方がスマートだと思うんだが

826 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 12:07:33
>>822
すいません。ありがとうございます。
動作しました。
こちらの方が後からみてわかりやすいので使わせていただきます。
ORとかで連結するときは比較するところも書かないと動作しないのですね。
勉強になりました。ありがとうございました。

827 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 12:11:19
>>825
些細なデータの処理まで、いつの間二やらAccessで作り込んでいたりするもん
だから、ちょっと最近、病的かなぁって思えてきちゃって。

まぁ、些細なデータながら繰り返し出力するものだから、これはこれでいいのか
なぁと思っているんだけれど。なんでもかんでもAccess病になりつつあるのです。

828 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 12:24:39
それふつう。
スキーマが明確なものは、Excel使う意味ない。
クライアントPC内でのデータ処理は基本Access。
Excelはワープロとしてしか使われていない。社内文書の大半はExcel。w
Wordは、、、どういうときに使うんだろう?

829 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 12:30:35
>>804に関して言えば、
フォームコントロールのチェックボックスと
なんらかのレコードフィールドのチェックボックスを混同してるのが
痛すぎ。


830 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 12:44:41
Wordったらあれだよ
409ポイントを超える特大文字がほしいときだよ

831 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 13:45:22
今更ながら、accessでシステム組んで
なんでこんなにヌルポが流行ったのかが分かった

フォームのフィールドの値を使って演算するクエリを作って完成、とおもったら
数値デリって空白のまま再クエリかけると、式が複雑すぎるか(ryのエラーが
フィールド全部にで涙目でIs Not Nullを入力しつつ
ああ、これがぬるぽか、と納得
ヌルポヌルポ



832 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 13:48:25
>>829
そうじゃないと思うが?

833 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 14:00:17
>>832
いろいろ答えてあげてる方々は、
んなことあるはずないと脳内で補正してるけどね。


834 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 14:07:07
access2002です。
フォームをいろいろ開いて作業しているときに、Alt+Tabみたいにしてフォーム間を移動出来たら便利だなと考えました。
Ctrl+F6でウィンドウ間を順に切り替えられるというので試したところ、フォーカスが移るフォームと無視されるフォームがありました。
フォーカスが移るフォームはウィンドウメニューにフォーム名が記載されています。
つまり、ウィンドウとして扱われるフォームとそうでないフォームがあると言うことです。
この違いの原因は何でしょうか?御教授をお願いいたします。一応ググりましたが分かりませんでした。


835 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 14:13:26
よく分からんが、プロパティウィンドウとかを「フォーム」と勝手に呼んでいたりはしないよな?

836 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 14:14:53
>>831
ぬるぽでぐぐれ

837 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 15:44:22
>>833
少なくとも今回の場合は違うだろ・・・

838 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 16:42:55
>>831
そんなただのNullで苦労してるようじゃぬるぽはもっと苦労するぞ

839 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 16:50:41
これでおk

try { ... } catch (ぬるぽ e) { throw e;}

840 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 17:15:57
>>816
いちいち書くのは面倒なのでアップロードしました。

http://applis.servehttp.com/index.htm
ファイル名:00016966.zip


841 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 18:34:23
>>837
「わかりました」って言ってる>>826を読むと、
>ORとかで連結するときは比較するところも書かないと動作しないのですね。
だぞよ。
where条件とか、わかってないぽい。

みんな偉いよ。

842 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 20:18:25
Access VBA 使える人って需要あります?

派遣で色々な会社で働いて来たけど、私の行った会社ではどこでも
Access使える人すごい!って感じだったけど、
ネット上ではAccessやVBAが使えたところで、ちょっと便利な人位にしか
思われないって意見が多くて、実際の所はどうなんでしょう?

843 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 20:30:38
会社によると思うけど、使えて当たり前って感じだな。
むしろ、それですごいと思われる会社(業界?)を知りたい。
転職するわ。

844 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 20:43:37
842です。
業界はIT系ではないです。
広告代理店や、物流などです。
自社で開発したシステムを売るような業界ではありません。

845 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 21:08:29
俺は情報システム部所属だけど部内では使えて普通、営業所の人間だとスゲーって感じかな

846 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 21:13:55
>>842
JAVA使える方が100倍マシ

847 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 21:15:01
いいねーこの流れいかにも2chっぽくて

848 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 21:48:18
>>840 は蓮を透視できるエスパーさんに任せた。後はよろしく。

849 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 22:05:42
> Access VBA 使える人って需要あります?
うれしくない仕事が増えます
ほかに誰も使える人がいなかったら(ry

>>848
撃沈しました

850 :名無しさん@そうだ選挙にいこう:2008/06/21(土) 22:08:19
前任者が開発したMDB任されてるんだけどゴリゴリのマクロで作られていてメンテが激しく面倒。
近々VBAで書き直そうと思ってる

851 :840:2008/06/21(土) 22:35:21
ごめんなさい。パスワードを忘れてました。wifr59i3です

852 :名無しさん@そうだ選挙にいこう:2008/06/22(日) 19:42:42
アクセスのデータやマクロを共有フォルダーに入れています。
LANを組み、他のパソコンからも見れるようにしていますが、
access file block というfileができて、アクセスできなくなってしまいます。
何回か、データを置くフォルダーを変えて対処したのですが、繰り返しになってしまいます。
どなたか、素人にもわかるように、原因や対処法を教えてもらえないでしょうか?
よろしくお願いします。

853 :名無しさん@そうだ選挙にいこう:2008/06/22(日) 21:02:15
共有で開いてるの?

854 :名無しさん@そうだ選挙にいこう:2008/06/22(日) 21:39:24
852です。
共有で開いています。
2つのパソコンで同時に開いても大丈夫なんですが、
access file block がデータのあるフォルダーにできると、排他的になってしまいます。
(ひとつからしか、開けなくなります)
よろしくお願いします。

855 :名無しさん@そうだ選挙にいこう:2008/06/22(日) 21:41:41
片方が更新中じゃねえのか?

856 :名無しさん@そうだ選挙にいこう:2008/06/22(日) 21:49:08
素人にもわかるように教えてやる。
素人はDB共有とかしないほうがいい。

857 :名無しさん@そうだ選挙にいこう:2008/06/22(日) 21:58:14
ごめんなさい。
access file blockというファイルが残ってしまうと、排他的になるようです。
別なフォルダーを作って、DBをコピペすると復活します。
レコードレベルでのバッティングは無いようです。
常時接続しておくしか、ないでしょうか?
DBの設定をアプリ共有にすると、かなり遅くなり、気が進みません。
よろしくお願いします。

858 :名無しさん@そうだ選挙にいこう:2008/06/22(日) 22:16:07
フォルダのアクセス権をチェックしてみて

859 :名無しさん@そうだ選挙にいこう:2008/06/22(日) 23:28:43
>>851
XP上のAccess2003ではピクリともしなかった。
さすがにRequery時には一瞬チラッとはするが、コンボボックスの
上にカーソル置いたくらいでは微動だにせず。

Vistaで2007ってゆーのやめれば解決すると思われ。

860 :名無しさん@そうだ選挙にいこう:2008/06/22(日) 23:31:47
852です
ファイルのプロパティは、読み取り専用のチェックボックスが半分点灯しています
うまく言っている時は消灯しているような気がしますが。。。。。
アクセス権はフルアクセス可能で設定しています
よろしくお願いします

861 :名無しさん@そうだ選挙にいこう:2008/06/22(日) 23:51:00
フォルダのアクセス権は共有のアクセス許可とセキュリティの2つがあるよ

862 :名無しさん@そうだ選挙にいこう:2008/06/22(日) 23:55:42
access file blockってのはAccess.LockFileじゃなくて?

863 :名無しさん@そうだ選挙にいこう:2008/06/23(月) 00:04:51
852です
おっしゃるとおり、Access.LockFileです。
よろしくお願いします。

864 :名無しさん@そうだ選挙にいこう:2008/06/23(月) 00:06:27
>>863
>>861
チェックしてね

865 :名無しさん@そうだ選挙にいこう:2008/06/23(月) 00:10:20
すみません。
フォルダーを共有にして、DBを非排他的にしてます。
セキュリティはどこを見ればよいのでしょうか?
よろしくお願いします。

866 :名無しさん@そうだ選挙にいこう:2008/06/23(月) 00:12:26
>>865
フォルダのプロパティで「セキュリティ」のタブ

867 :名無しさん@そうだ選挙にいこう:2008/06/23(月) 00:17:11
積年の苦労がやっと解決する兆しが見えました
明日、チャレンジしてみます
ありがとうございます

868 :名無しさん@そうだ選挙にいこう:2008/06/23(月) 00:21:24
念のため・・・もう一個は「共有」タブ→「アクセス許可」
それから一応データベースファイルのセキュリティも確認してね

869 :名無しさん@そうだ選挙にいこう:2008/06/23(月) 00:28:08
.ldbというか2007だから.laccdbかもしんないけど
それDB開いたら必ず作られるもんだから。

870 :名無しさん@そうだ選挙にいこう:2008/06/23(月) 00:43:32
852です
そのファイルが消えずに残って、よそのPCからアクセスできなくなるのですが。。。
アクセス固有のファイルでしょうか?
よろしくお願いします

871 :名無しさん@そうだ選挙にいこう:2008/06/23(月) 02:45:07
>>859
バージョンを間違えました。2003です。


872 :名無しさん@そうだ選挙にいこう:2008/06/23(月) 03:53:40
>>870=852
【1】\\Domain\User1が使用開始→ \\Domain\User1が所有者の.ldbが作成される。
【2】その後で\\Domain\User2が使用開始→ 既存の.ldbに対して変更が行われる。
【3】ここで\\Domain\User1が先にDBの使用を終了→ \\Domain\User2が使用中のため
 .ldbの削除は行わず変更のみ行われる。
【4】\\Domain\User2がDBの使用を終了→ .ldbの所有者が\\Domain\User1のため
 アクセス権が適切でないと.ldbの削除に失敗する。

・・・・という事が起きているような気がするんだが。
(ひょっとすると\\Domain\User1は\\pc1\systemかも知れないが理屈は一緒かと)

873 :852です:2008/06/23(月) 12:57:55
レスありがとうございます。
自動オフなどの際に、誘発されている気がしてました。
おっしゃる通りのことが起きていると思います。
どうしようもないことなのでしょうか?
それか、User1が常に接続していれば、防げるということでしょうか?
よろしくお願いします。



874 :名無しさん@そうだ選挙にいこう:2008/06/23(月) 13:35:57
対症療法としては、最初にDBを使用し始めたユーザーが最後に終了すればOKのはず。
根本的に直す方法はネットワーク構成によって手順が異なってくる。
(ドメインコントローラーの有無など)

875 :名無しさん@そうだ選挙にいこう:2008/06/23(月) 15:26:20
レスありがとうございます
ドメインコントローラーは異次元空間です
簡単にはいかないことがわかりました
今後は終了の順序に気をつけたいと思います
ありがとうございました

876 :名無しさん@そうだ選挙にいこう:2008/06/24(火) 15:47:11
2007使ってるんですけど、ボタンとかの見た目って自分の好きに変えられないの?
正直デフォの奴ってださすぎて萎える

877 :名無しさん@そうだ選挙にいこう:2008/06/24(火) 15:55:59
>>876
Access database are so ugly!!!! They look like windows 3.1
http://blogs.msdn.com/access/archive/2008/06/23/designing-applications.aspx

878 :名無しさん@そうだ選挙にいこう:2008/06/24(火) 21:45:23
OS:XPSP2
Access:2003
初めてAccessVBAで開発することになった新卒プログラマなんですが、
access使ってexcel帳票を取り込んだ時にブックが共有に設定されていたら、
排他モードに変更するという処理はできますか?
ちなみに
createObject("Excel.Aplication")
WorkBooks.open
でブックを開いた後
ActiveWorkbook.ExclusiveAccesを実行するとExclusiveAccesメソッドでエラーが出てしまいます


879 :名無しさん@そうだ選挙にいこう:2008/06/24(火) 22:56:55
CreateObject()で作成したオブジェクトで修飾し忘れてるだけじゃないか
と疑ってみるテスト

880 :名無しさん@そうだ選挙にいこう:2008/06/24(火) 23:02:57
ExclusiveAccesだからじゃないの?

881 :878:2008/06/24(火) 23:07:14
>>879
レスには記述していないだけで実際はオブジェクト名.〜となっています
OpenしたブックをSaveAsメソッドで保存する際にAccessmode:=xlExclusiveにすれば
いいんじゃないかと試しましたが、実行時にSaveAs自体でエラーがでました。
ExcelVBAと比べてAccesVBAではExclusiveAccesやSaveAsメソッドが
そもそも使えないんじゃないか、なんてことはないですよね?

882 :878:2008/06/24(火) 23:09:57
>>880
ブックを共有にして試してみましたが失敗してしまいました
open自体は成功しています

883 :878:2008/06/24(火) 23:12:18
>ExclusiveAccesだからじゃないの?
すみません意図を勘違いしてました
実際のコードは"ExclusiveAccess"とちゃんと記述してます
スペルミスはしてないです

884 :名無しさん@そうだ選挙にいこう:2008/06/25(水) 01:23:50
今Accessから共有ブックにコード流したが、何の問題もなく
排他に変更できた。
共有じゃないブックに流すとエラーになるが(当たり前)。

晒していない部分のコードが限りなく怪しいので、きちんと晒すか
エスパー限定で募集汁。

885 :名無しさん@そうだ選挙にいこう:2008/06/25(水) 17:15:36
DateAdd の 「d 日」 と 「w 週日」 って何が違うんですか?

886 :878:2008/06/25(水) 19:29:24
>>884
晒したいんですが会社から2chにアクセスできないし、会社情報は持ち帰れないしで
断片的に覚えてる部分を書き連ねるしかないのです

一応今日の午前中に問題を解決できました
オブジェクト.WorkBooks.Openする時にReadOnly:=Trueとしていたのがエラーの原因でした
外したら上手く動作してくれました 皆さんご迷惑をおかけしてすみませんでした


887 :名無しさん@そうだ選挙にいこう:2008/06/25(水) 20:34:08
解決した方法を報告するのは、良い質問者。
「自己解決しますた」のみは、悪い質問者。
質問しっぱなし放置は、桐にしとけ。

888 :885:2008/06/25(水) 21:10:43
?dateadd("w",1,#2008/6/28#)
→2008/06/29

?dateadd("d",1,#2008/6/28#)
→2008/06/29

この2つって何が違うんですか?
同じ結果を返しているように思えるんですが。

889 :名無しさん@そうだ選挙にいこう:2008/06/25(水) 22:42:28
yとdとwは同じ。

890 :名無しさん@そうだ選挙にいこう:2008/06/25(水) 22:56:45
英語の開発者用ヘルプに違いが書いてあるよ

891 :名無しさん@そうだ選挙にいこう:2008/06/26(木) 07:31:36
Access2000です
フォームを立ち上げるときに
「******.*****」というメッセージの値の入力を促されるダイアログが表示されるのですが
******.*****という記述の部分がVBAのコード中にありません。
どうデバッグしていけばいいでしょうか

892 :名無しさん@そうだ選挙にいこう:2008/06/26(木) 08:44:46
>>891
使ってる連結クエリにパラメタが足りないとか、
そんな程度の事じゃないか?


893 :名無しさん@そうだ選挙にいこう:2008/06/26(木) 22:14:09
Access2007です。(XP)

Accessで、エクセルのVLOOKUPみたいなことはできますか?

商品名と商品コードの2列からなるテーブルを用意しておき、

別のテーブルで商品名を入力すると、隣のセルに商品コードが自動的に
出るようにしたいのですが、可能ですか?

エクセルなら、VLOOKUPで簡単にできるんですけどね。。。

894 :名無しさん@そうだ選挙にいこう:2008/06/26(木) 22:14:48
続いて質問します。
Accessのルックアップウィザードで、データの形式が変わってしまいます。

商品名(テキスト形式)の一覧テーブルがあり、
販売記録のテーブルで、ルックアップウィザードを使って商品名を入力できるようにしました。

そして、クエリを使って、商品Aだけの販売履歴を抽出したいんです。


クエリの抽出条件のところに "商品A" と入力したのですが、
「データ形式が抽出条件と一致しません」みたいなエラーだ出ました。

販売記録のテーブルを見てみると、
なぜか商品名のデータ形式が「数値形式」になっています。

最初は「テキスト形式」で作ったはずなのですが。。。

いったん両テーブルのリレーションを切り、もう一度最初からルックアップウィザードをやり直したところ、
やはりそれによって「テキスト形式」が「数値形式」に変わるようです。

なぜでしょう??

商品名一覧テーブルのキーになっている、商品コードが数字だからでしょうか?
キーの形式が適用されてしまうのでしょうか?

895 :893=894:2008/06/26(木) 22:16:38
VBAとかはまったく分かりません。

896 :名無しさん@そうだ選挙にいこう:2008/06/26(木) 22:40:03
>>893-894

>エクセルのVLOOKUPみたいなことはできますか
Excelより簡単。ただし、テーブルだけでやろうとしなければの話。
テーブルは只の入れ物だけと思っていたほうが無難。

894の方

IDが割り振られているのだろう。
どういうふうにルックアップフィールドを生成したかは知らんが。
自分でキーとなるフィールドを指定した覚えがないのなら
集合値ソースを見てみろ。
数値が振られていないか?


897 :名無しさん@そうだ選挙にいこう:2008/06/26(木) 22:57:52
>>896

>>テーブルだけでやろうとしなければの話。
他に何を使ったらいいのでしょう?

>>     数値が振られていないか?
明日、確認してみます。
もしそうだとしたら、クエリで抽出する際に、
"商品A"ではなく、IDの方を入力してやればいいのでしょうか?


898 :名無しさん@そうだ選挙にいこう:2008/06/26(木) 23:29:04
>他に何を使ったらいいのでしょう?
普通はフォームを使うと思うよ。

>"商品A"ではなく、IDの方を入力してやればいいのでしょうか?
IDと書いたが、商品コードがキーになっているんだろうね(つまり商品コードで抽出)。
「列数」が2で、「連結列」が1、「列幅」が0cm;0以上の数値(恐らく2.54cm)になっていたら
まず間違いなし。

※マルチよくない

899 :名無しさん@そうだ選挙にいこう:2008/06/26(木) 23:50:32
Accessのレポートに張り付けたExcelのOLEオブジェクトのシートに
値を書き込みたいのですがどうしたらいいのでしょうか
Access2000です。

900 :名無しさん@そうだ選挙にいこう:2008/06/27(金) 00:58:38
デザインビューならダブルクリックで編集できるようにならなかったっけ?

901 :名無しさん@そうだ選挙にいこう:2008/06/27(金) 01:14:16
いえ、VBAで値を書き込みたいのです。
説明不足ですいません

902 :名無しさん@そうだ選挙にいこう:2008/06/27(金) 14:23:10
罫線引くのが面倒くさいときにExcelで作成して
その上にテキストボックスなどを重ねることはよくやるが、
そういうことではないんだろうなぁ。

903 :名無しさん@そうだ選挙にいこう:2008/06/27(金) 14:35:14
>>899
激しく普通にそのOLEオブジェクトのメソッドを呼べばいいじゃないか。

904 :名無しさん@そうだ選挙にいこう:2008/06/27(金) 14:46:56
【 システム環境  . 】 WindowsXP, Access2000
【 VBAが使えるか .】 ちょっとだけ
【 VBAでの回答  】 OK
【 検索キーワード 】 ACCESS 権限

おたずねします。
昨日までは問題なく起動できていたアクセスファイルなのですが
今日開こうとしたら「MSysAccessObjectsの読み取り権限がないので、レコードを読み取ることができません。」と
エラーメッセージが出てファイルを開けなくなってしまいました。
パスワードが設定してあって、ファイル実行→パスワード入力→エラーメッセージとなります。

やったこと。
・ツール→データベースユーティリティ→最適化/修復 ×
 ファイルを開くときにパスワード聞いてきて、入力したらまた同じメッセージ。
・新しいMDB作ってインポート ×
 インポートファイルを選択したときにパスワード聞いてきて、(以下略

権限設定ファイル(?)などは見当たりません。
ググッてもセキュリティを破ることになる為でしょう、まったく情報が見つかりません。
作成した人間が退社して連絡が取れません。
パスワードはそのままでいいのですが権限を解除する方法はないでしょうか。
作り直すにしても中のTBLデータが取れないので困っています。

905 :899:2008/06/27(金) 15:03:02
どんな感じにメソッドを呼び出せばいいんでしょうか

906 :名無しさん@そうだ選挙にいこう:2008/06/27(金) 15:05:58
>>904
アキラメロン

907 :名無しさん@そうだ選挙にいこう:2008/06/27(金) 16:45:12
>>904
Access2000 のパスワードなら一瞬で解除できるだろ

908 :名無しさん@そうだ選挙にいこう:2008/06/27(金) 16:49:43
>>905
http://www.google.co.jp/search?ie=shift-jis&q=OLE%20VBA%20Excel%20WorkSheets

909 :904:2008/06/28(土) 11:02:41
>>906 イヤンデスメロン

>>907
パスワードはわかっているんです。
パスワードを入力した”あと”に「権限がない」エラーが出るんです。


910 :名無しさん@そうだ選挙にいこう:2008/06/28(土) 11:29:13
>>909
じゃ、他のPCにコピーして、それを開け

911 :904:2008/06/28(土) 11:59:51
>>910 試してみましたが状況かわらずです

ちなみに当該PCでシステムの復元試してみたのですが
ファイルの状態は変わりませんでした。


912 :名無しさん@そうだ選挙にいこう:2008/06/28(土) 14:03:13
◆◆◆◆◆毎日新聞社による日本人女性への誹謗中傷◆◆◆◆◆

・母親は受験勉強をする息子の学力向上のためにフェラチオをする
・日本人女性の55%は、出会ったその日に男と寝る
・ファストフードは女子高生たちを性的狂乱状態におとしいれる
・ティーンたちはバイアグラを使ってウサギのようにセックスをする
・女子高生は、刺激のためにノーブラ・ノーパンになる
・日本の最新の流行 : 70歳の売春婦
・老人の売春婦の人気にもかかわらず、日本では小学生の売春婦にも仕事がある
・日本の若い看護婦は売春婦に勝る
・24時間オルガズムが止まらない病気で苦しむ日本人女性の数が増えている
・15未満の子供を対象とした疑似ポルノが日本に蔓延している
・OLの72%が、セックスをより堪能するために何らかのトレーニングを受けている
・人妻は気分転換の目的で昔の恋人に抱かれに行く
・主婦は郊外のコイン・シャワーで売春をしている
・日本男子は柔道や空手の部活で男相手に童貞を捨てている
・ほとんどすべての漁師は海でマンタとSEXしている
・まだ10代の少年から退職した老人までみんな2980円の手コキを利用している
・六本木のあるレストランでは、食事の前にその材料となる動物と獣姦する

※同社が全年齢向けコーナーで七年以上にわたり世界に向けて配信していたものの一部です
※同社の行為は日本人への偏見や人種差別、婦女暴行、幼児虐待を助長するものです

◆毎日新聞の英語版サイトがひどすぎる まとめ@wiki
 http://www9.atwiki.jp/mainichiwaiwai/
◆毎日新聞問題の情報集積wiki
 http://www8.atwiki.jp/mainichi-matome/

つまり日本国民は
http://www.vipper.net/vip552788.jpg

913 :名無しさん@そうだ選挙にいこう:2008/06/28(土) 16:50:48
>>904
どう考えてもMDBの破損だから、
アキラメロン

914 :名無しさん@そうだ選挙にいこう:2008/06/28(土) 18:31:13
>>904
典型的な破損。
金払ってでも直す価値のあるファイルならAccessFIXあたりでググって専門業者に頼め。

915 :名無しさん@そうだ選挙にいこう:2008/06/29(日) 08:00:40
>>904
今度からは、UI部分とデータ格納部分は、たとえパーソナルであっても
分けた方がいいですよ。

916 :名無しさん@そうだ選挙にいこう:2008/06/29(日) 10:15:27
今度からは権限の有無がどうこう以前にいつHDが飛んでもいいように
バックアップを取っておくのがいいですよ。

917 :名無しさん@そうだ選挙にいこう:2008/06/29(日) 11:38:04
質問させて頂きます。



918 :名無しさん@そうだ選挙にいこう:2008/06/29(日) 12:04:46
却下する

919 :名無しさん@そうだ選挙にいこう:2008/06/29(日) 17:57:42
自己解決しました。

920 :名無しさん@そうだ選挙にいこう:2008/06/29(日) 18:12:35
>>919
     *      *
  *出た!自己解決w+
     n ∧_∧ n
 + (ヨ(* ´∀`)E)
      Y     Y    *

921 :904:2008/06/30(月) 09:29:16
>>913-915
さんくす。
やっぱり無理みたいですねぇ。

週末ずーっと調べてたのですがほとんどが「DB破損である」というものでした。
あきらめて作り直す方向で行きます。
FORMとかはともかくデータが消えたのが痛い・・・。


922 :名無しさん@そうだ選挙にいこう:2008/06/30(月) 13:33:06
徒労に追われかもしレンガこんなのも

Jet compact utility
ttp://support.microsoft.com/kb/295334/

923 :名無しさん@そうだ選挙にいこう:2008/07/01(火) 17:42:34
>>921
もう遅いかも試練が、新しいMDBを作ってそれから壊れたMDBテーブルのインポートは試みた?
(念のため壊れたMDBをコピーしてからやってみることをお勧め、
 とりあえず1日1回以上バックアップは必須だよん)

924 :名無しさん@そうだ選挙にいこう:2008/07/01(火) 20:44:02
>904 を読んでないのか。

925 :名無しさん@そうだ選挙にいこう:2008/07/02(水) 10:37:11
>904と状況が違うかもしれんが、唯一解決してるようだ。
ttp://oshiete1.goo.ne.jp/kotaeru.php3?q=1089828

926 :名無しさん@そうだ選挙にいこう:2008/07/02(水) 23:43:36
クエリで数値はSUMで合計できますが
同様に文字列を連結する方法はありませんか?

927 :名無しさん@そうだ選挙にいこう:2008/07/02(水) 23:51:08
&じゃないの?

928 :名無しさん@そうだ選挙にいこう:2008/07/03(木) 00:22:42
式:[フィールド名1] & [フィールド名2] & "aaa"

929 :名無しさん@そうだ選挙にいこう:2008/07/03(木) 00:33:02
[名前], [数量]
りんご, 5
みかん, 10
たろう, 6

とあった場合
select sum([名前], sum([数量]) from テーブル
の結果で

りんごみかんたろう, 21

という結果にしたいのです。

930 :名無しさん@そうだ選挙にいこう:2008/07/03(木) 00:42:20
式1:[りんご] & [みかん] & [太郎], Sum([数量])は?

931 :名無しさん@そうだ選挙にいこう:2008/07/03(木) 05:58:25
>:[りんご] & [みかん] & [太郎]
それフィールド名じゃないでしょ

932 :名無しさん@そうだ選挙にいこう:2008/07/03(木) 08:05:56
>>929
SQLじゃできないんじゃないかな?
VBAだとこんな感じかもしれない。
Sub test()
Dim db As Database
Dim rs As Recordset
Dim namae As String, suuryou As Long
Set db = CurrentDb

Set rs = db.OpenRecordset("テーブル1")
Do Until rs.EOF
namae = namae & rs!名前
suuryou = suuryou + rs!数量
rs.MoveNext
Loop
MsgBox namae & "," & suuryou
End Sub

933 :名無しさん@そうだ選挙にいこう:2008/07/03(木) 09:02:06
ああ、この場合でもメモリを解放する必要があるのか
>>932のMsgboxの次の行に以下を追加で
rs.Close: Set rs = Nothing
db.Close: Set db = Nothing

934 :名無しさん@そうだ選挙にいこう:2008/07/03(木) 23:25:27
フォームを普通に印刷すると終端に細い横線が出ますが、
これ、何とかして印刷させないようにする方法は無いでしょうか。

935 :名無しさん@そうだ選挙にいこう:2008/07/03(木) 23:36:52
>>934
実際にスクショを見てみたい

936 :934:2008/07/03(木) 23:52:21
事故解決!
フォームのプロパティ→書式→区切り線 を"いいえ"
にすればOKですね
請求書を作ったんだけど余計な線が表示されて鬱陶しかったのです

937 :名無しさん@そうだ選挙にいこう:2008/07/03(木) 23:55:50
もはや自己怪傑はこのスレの伝統芸能

938 :名無しさん@そうだ選挙にいこう:2008/07/04(金) 00:02:51
>>936
おまい良い質問者。
>>887

939 :名無しさん@そうだ選挙にいこう:2008/07/04(金) 17:37:56
黙々とPCに向かってたらサッパリだけど、誰かに話かけたら途端に自己解決ってよくあることぢゃん。
ひとまずは次スレのテンプレに『自己解決したら内容書くべし』って書いたらよろし。

940 :名無しさん@そうだ選挙にいこう:2008/07/04(金) 19:50:13
>>939
俺の場合悩んで悩んでそれでも解決できない時はあまり残業しないで帰っちゃうけど
一晩寝ると次の日は頭がスッキリして意外と早く解決できちゃったりする

941 :名無しさん@そうだ選挙にいこう:2008/07/04(金) 19:55:31
一晩寝たから解決したんじゃなくて悩んで悩んで悩みぬいて頭が混沌としたところで寝るから
寝ている間に整理されて解決するんでただ寝れば解決するってわけじゃないので誤解の無いように。


942 :名無しさん@そうだ選挙にいこう:2008/07/04(金) 20:14:25
一晩悩んでスッキリ♪

さて、何だったっけ・・・?

943 :名無しさん@そうだ選挙にいこう:2008/07/04(金) 21:53:50
>>941
おまい、バカだろ

944 :名無しさん@そうだ選挙にいこう:2008/07/04(金) 22:14:21
>>943
ぬるぽっ

945 :名無しさん@そうだ選挙にいこう:2008/07/06(日) 16:34:01
【 システム環境  . 】 WindowsXP, Access2007
【 VBAが使えるか .】 いいえ
【 VBAでの回答  】 否
かなりの初心者の学生なんですが、
自宅でAccessをインストールして勉強をしていたら
エラーがでてどうしようもないんで質問させてください。

フォーム作成でコンボボックスを作成して項目を選択したら
連鎖的に他のやつも表示されるようになりますよね?
それが自宅でやってみたらどうもうまくいかないんです。
検定の練習問題集なので、ネットで配布されている回答と照らし合わせて
やってもどうもうまくいかないので、
なにか設定に問題があるような気もするのですが。
「フィールドを更新できません」のようなエラーが出ます。
お願いします。

946 :名無しさん@そうだ選挙にいこう:2008/07/06(日) 16:55:15
>>945
それだけの情報じゃエスパーじゃなきゃ分からない

947 :名無しさん@そうだ選挙にいこう:2008/07/06(日) 17:01:28
>>946
ごめんなさい。事故解決しました。
別のテーブルの方のコントロールソースを
選んだらなんかできるようになりました。
理解はしてませんが解決したのでよかったです。

948 :名無しさん@そうだ選挙にいこう:2008/07/07(月) 09:00:04
>>944
ガッ!

949 :名無しさん@そうだ選挙にいこう:2008/07/07(月) 09:53:20
理解してないのか・・・がんばれよ、学生。

しかしいきなりAccessから入るんだね。
データベースの基礎とかやってからAccessやればもっと理解できるのに。

950 :名無しさん@そうだ選挙にいこう:2008/07/07(月) 09:59:07
>>949
RDBMSの基礎からはいると、
ACCESSは使えないって結論が出るだろ。

951 :名無しさん@そうだ選挙にいこう:2008/07/07(月) 14:36:57
適材適所だろ。
Access だって、RDBだ(MS部分が心許ないが。)
ただ、例えば SQLite を無茶に使う奴はなぜかいないが、
Access は無茶に使われやすいだけのこと。


952 :名無しさん@そうだ選挙にいこう:2008/07/08(火) 01:19:47
初っ端からSQL直書きでデータベース概念理解できるもん?
俺には無理だ

953 :sage:2008/07/08(火) 09:59:00
E-R図

954 :名無しさん@そうだ選挙にいこう:2008/07/08(火) 10:00:51
↑sageマチガッタ

955 :名無しさん@そうだ選挙にいこう:2008/07/08(火) 22:11:30
一部の天才を除いて、ほとんどの人は理論と実践を平行して進めることが
一番効率よく覚えられる方法だよ

956 :名無しさん@そうだ選挙にいこう:2008/07/08(火) 22:48:39
>>955
そそ。

で、ここでもよくある系の質問て、基礎を
正確に理解する必要があるってカンジのが多い。

リレーション、データ型、where条件、インデックス、配列
えーと他にもあると思うけど、こういう基礎的なリクツ。

こういうのを理解してないと、
Accessを利用した簡単なシゴトも、振れないことが多いよ。
集計だって、結果が違っちゃうからね。

螺旋階段登るみたいなのがいいかな、と思う。
なんか一個作りながら。ね。

957 :名無しさん@そうだ選挙にいこう:2008/07/09(水) 09:52:30
テキストボックスを作成するとラベルが付いてきますが、このラベルだけを動かす事はできないのでしょうか?
ラベルと一緒にテキストボックスも移動してしまうのですが。

958 :名無しさん@そうだ選挙にいこう:2008/07/09(水) 11:50:47
ラベルだけ切り取って貼り付ける。

959 :名無しさん@そうだ選挙にいこう:2008/07/09(水) 11:51:17
手が、パーじゃなくて1になる所を探せ

960 :名無しさん@そうだ選挙にいこう:2008/07/09(水) 12:36:30
>>958-959
ありがとう。

Access2007を使ってるんだけど、ラベルを選択して左上の四角マークみたいなところに
カーソルを合わせるとラベルだけ移動することができました。
これって前のバージョンでもできたっけ?

961 :名無しさん@そうだ選挙にいこう:2008/07/09(水) 17:59:40
そんなのずっと前のバージョンでもできたよ。


962 :名無しさん@そうだ選挙にいこう:2008/07/11(金) 08:23:17
2000でもできてるけどな

963 :名無しさん@そうだ選挙にいこう:2008/07/11(金) 14:26:36
その前もできたような気がするけどさすがに覚えてない。


964 :名無しさん@そうだ選挙にいこう:2008/07/12(土) 02:55:33
2.0はできた。その前は知らない。

965 :名無しさん@そうだ選挙にいこう:2008/07/12(土) 19:57:56
すでにいろいろな抽出条件の入ったテーブル作成クエリの[店番]フィールドに
複数の店番を追加して抽出条件としたいと思ってます。

[フォーム1]のテキストボックス[検索ボックス]に
店番をカンマで区切って入力すると、
不可視のテキストボックス[抽出ワード]に
抽出条件文が表示されるようにしました。

Private Sub 検索ボックス_AfterUpdate()
Dim strFilter As String
Dim strEle() As String
Dim i As Integer
'最後にカンマつけてたらはずす
If Right(Me.検索ボックス, 1) = "," Then
Me.検索ボックス = Left(Me.検索ボックス, Len(Me.検索ボックス) - 1)
End If
strEle = Split(Me.検索ボックス, ",", Compare:=vbTextCompare)
For i = LBound(strEle) To UBound(strEle)
strFilter = strFilter & " or " & Val(strEle(i)) '店番は3桁だが数値にする
Next
strFilter = Mid$(strFilter, 5)
Me.抽出用ワード = strFilter
End Sub

966 :名無しさん@そうだ選挙にいこう:2008/07/12(土) 19:59:54
>>965です。
以前フィルタを使用してフォームで表示させていたので
それをちょっと改良して上記のようになりました。

[フォーム1].[検索ボックス]に下のように入力すると

01,002,004,

[フォーム1].[抽出ワード]に下のように表示されます。

1 or 2 or 4

この 1 or 2 or 4 の部分を抽出条件としたいのです。

テーブル作成クエリの[店番]フィールドの抽出条件に
[Forms]![フォーム1]![抽出用ワード]と入れて実行すると

「式が正しく入力されていないか、複雑すぎるために評価できません。
たとえば、数式に複雑な要素が多すぎます。
変数に式の一部を割り当て、式を簡単にしてください。」と
エラーが出ます。
抽出条件に直接 1 or 2 or 4 と入力すると問題ないのですが
表示されたものを使用するのはどうすればいいのでしょうか。

967 :名無しさん@そうだ選挙にいこう:2008/07/12(土) 20:14:36
クエリデザイナではなくSQLビューに変えてみると問題が見えてくるはず

968 :名無しさん@そうだ選挙にいこう:2008/07/12(土) 20:19:07
>>967
見えました!
なんとかなりそうです。感謝。

969 :名無しさん@そうだ選挙にいこう:2008/07/13(日) 00:24:56
外出だったらすまんが
今access2003で稼働してるMDBがあって、たまたま出先で2007の入ったPCで動かしてみたらエラーが
コンパイルエラーで修正候補:識別子というダイアログが出るやつ
調べてみたら、先頭に全角数字が含まれるテーブル名やフィールド名があるとアウトみたい・・・


うわああああああああああああああああああああああああああああああ
俺オワタwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
逃げていいスかwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

970 :名無しさん@そうだ選挙にいこう:2008/07/13(日) 01:21:21
ORACLEじゃないんだから先頭1文字は数字禁止とかなかったはずだけど。

まあどっちみちフィールド名に半角数字と全角数字が入り乱れて
全然統一されてないDBをいじくる仕事はもういやだお・・・

971 :名無しさん@そうだ選挙にいこう:2008/07/13(日) 01:24:31
ご愁傷様。
でも、そのバグ?は2007特有ではないはず。
少なくとも2000の時代には言われていた。
そんな既知のバグ、修正してくれればいいのにね。

972 :名無しさん@そうだ選挙にいこう:2008/07/13(日) 02:33:46
2003で作ったら何の問題も無く動いて
2007でそのファイルが動かない孔明の罠・・・

俺、来週職場のPCがOffice2007に入れ替わった後彼女にプロポーズするんだ!


973 :名無しさん@そうだ選挙にいこう:2008/07/13(日) 03:26:54
この問題は2000→2000間でも起こった。
開発した環境では動作しても、
違う環境では動作しなかったり。
2バイト文字は使わないのがプロの間では基本らしいが、
最低限、

・先頭2バイト数字の使用禁止
・予約語の使用禁止

だけは心がけた方が吉(他にもあるかもしれないが)。



974 :名無しさん@そうだ選挙にいこう:2008/07/13(日) 16:08:27
>>969
俺、2000の頃から作っている奴は、2007で読み込ませてもエラーでないお

テーブル名からフィールド名まで日本語だけれどね。
ただ、最近、MySQLをデータ置き場にしたから、MySQL内のテーブルとか、
フィールド名は英語にしてあるけれど、クエリの際にリネームして、互換性
を維持してある。

2007で作ったMDBやACCDBにそっくり移動させてみて検証の必要性はあ
ると思いますよ。

975 :名無しさん@そうだ選挙にいこう:2008/07/13(日) 21:02:23
これだね

[ACC2003] プロシージャ名に特定の 2 バイト文字を含むとデータベース変換時にエラーが発生する
http://support.microsoft.com/kb/436852/ja

回避策は、該当箇所の名前を全部変えろ、だそうですw

976 :名無しさん@そうだ選挙にいこう:2008/07/13(日) 22:06:58
>>975
なんとも、いい加減な回避策ですね。とても、工学的とはおもえない対処法。

977 :名無しさん@そうだ選挙にいこう:2008/07/13(日) 22:15:20
非常に根本的で完璧な対処法です。

978 :名無しさん@そうだ選挙にいこう:2008/07/14(月) 00:56:28
プロシージャ名じゃなくてテーブル名・フィールド名の話だった筈だが

979 :名無しさん@そうだ選挙にいこう:2008/07/14(月) 10:02:13
今までずっと2000だったんだけど、2007を使い始めて1ヶ月くらいたった。
みんないろいろ言ってるけど、2007、いいね。
リボンのわずらわしさに慣れれば、すごく、いいね2007。

980 :名無しさん@そうだ選挙にいこう:2008/07/14(月) 12:05:22
>>979
俺まだ2000使ってるが、具体的にどこがいい?

981 :名無しさん@そうだ選挙にいこう:2008/07/14(月) 21:07:31
その「リボンのわずらわしさ」が最大の難点じゃないの?
最大の欠点に慣れてしまえばすごくいいってのは、、、いいのかそれw

982 :名無しさん@そうだ選挙にいこう:2008/07/14(月) 21:09:05


983 :名無しさん@そうだ選挙にいこう:2008/07/14(月) 21:22:34
>>981
Accessの場合、リボンがあまり煩わしくないかもしれん。特殊なソフトウェアだからね。

これまでも、別段メニューからどうこうというやり方ではなかったし、リボンになったとこ
ろで、これは直ぐに慣れるよ。煩わしさも実のところ、感じたことがない。逆にExcelやら
Wordやらは頻繁にメニューやボタンを使うし、深い慣れがそこにあるから、リボンはわず
らわしさ、3倍増しといった感じだ。


984 :名無しさん@そうだ選挙にいこう:2008/07/14(月) 21:52:11
>>983
一理あるけれど、それあくまで「別段メニューからどうこうというやり方
ではなかった」人の場合だしょ。
たしかにエンドユーザはメニューあんま使わないかもしれないけど、
開発者もしくは兼ユーザの場合どうなんだろ。
自分はメニューけっこう使ってるなあ。特にツールメニューとか
消えたら、慣れの関係で致命傷負う希ガス。
ショートカット覚えろって話なのかもしれないけど、メニューって
そもそもショートカット覚えらんない人向けのインターフェイスじゃ
なかったんかなあ。。。

985 :名無しさん@そうだ選挙にいこう:2008/07/15(火) 08:28:57


986 :名無しさん@そうだ選挙にいこう:2008/07/15(火) 19:30:39


987 :名無しさん@そうだ選挙にいこう:2008/07/15(火) 20:52:58
ユーザー設定ツールバーのボタンにショートカットキーを割り振ってたんだが、
ショートカット一発で済んでいたのが、リボン(アドインタブ)では3ストロークを要する。
煩わしいにも程がある。

988 :名無しさん@そうだ選挙にいこう:2008/07/15(火) 22:44:22
>>987
xmlで書いたの?

989 :名無しさん@そうだ選挙にいこう:2008/07/16(水) 08:16:12


990 :名無しさん@そうだ選挙にいこう:2008/07/16(水) 20:15:29


991 :名無しさん@そうだ選挙にいこう:2008/07/16(水) 20:46:34
>>988
書いてないよ

992 :名無しさん@そうだ選挙にいこう:2008/07/17(木) 08:23:54


993 :名無しさん@そうだ選挙にいこう:2008/07/17(木) 10:30:22
>>991
じゃ、文句言わずに3ストロークで我慢しろ

994 :名無しさん@そうだ選挙にいこう:2008/07/17(木) 18:33:13
for i=993 to 1000
i=i+1
next

995 :名無しさん@そうだ選挙にいこう:2008/07/17(木) 19:48:40
自宅から書き込めないので会社から質問します。

ACCESSを使って仕事で使うデータベースを作ろうと考えていました。
そこでACCESS入門書を購入しました。最初は簡単に作れるものと思っていました。しかし、読むにつれて、基本が分からずに作業をはじめると、トンデモナイことになりそうな予感がしました。

そこで、基礎から勉強しようと考えて、正規化、SQLとは?、DAOとは?、RDBMSとは?
ER図とは?などを勉強し始めました。

ところがER図や正規化の意味や使い方は理解できたのですが、そこから先がさっぱりわかりません。
以下に分からない点を質問させていただきます。
以下の理解は正しいでしょうか?

1.RDBMSはデータベースを作ったり管理するシステムで、SQLという言語で人が動かすことができる。


2.Microsoft ACCESSのRDBMSはJETエンジンと呼ばれている。


3.JETエンジンを人が直接動かすにはADOやDAOというMicrosoft独自のSQL言語を用いる。つまり、RDBMSとSQLの関係が、JETエンジンとDAO(ADO)にそのまま当てはまる。


4.とすると、ACCESS用のVBAの位置づけは何か?(最初はVBAでJETエンジンを人が直接動かせるのかと思っていました。)


よろしくお願いします。


996 :名無しさん@そうだ選挙にいこう:2008/07/17(木) 20:07:12
>>ACCESS用のVBAの位置づけは何か
使いたければ使ったほうがいい便利な小道具

>>VBAでJETエンジンを人が直接動かせるのかと
それも可
ただaccsessを使うならもっと楽な方法が

997 :名無しさん@そうだ選挙にいこう:2008/07/17(木) 20:10:46


998 :名無しさん@そうだ選挙にいこう:2008/07/17(木) 20:11:04
SQL言語で動く人スゲェ

999 :名無しさん@そうだ選挙にいこう:2008/07/17(木) 20:11:37
>>994
愛が無いよー。
next i

1000 :>>995:2008/07/17(木) 20:15:19
>>996
さっそくのご教示ありがとうございます。

さっそく質問なのですが、テーブル、クエリー、フォームとならんでモジュールというのがあったと思います。VBAはそのモジュールの中だけで使うプログラム言語ですよね?

そのVBAを使って、人がJETエンジンを直接動かせるとなると、VBA=ADO(DAO)=SQL ということになると思いますが、この認識は正しいですか?
でも、ACCESSの入門書にSQLクエリーというのがあったような・・・・

どうすれば上記のような基本事項が理解できるようになるのでしょうか・・・・



1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

276 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)