プロが教えるわが家の防犯対策術!

access vbaでデータベースの商品マスタテーブル(リンクしたもの)と手動で取り込んだ受注テーブルを比較してマスタに登録のない品番をNULLとして表示するクエリを作ったのですが、vbaを使って「品番チェック」というボタンを押しただけで受注テーブルにNULLがあるか否かをMsgboxで表示させたいんですが、詳しい書き方がわかりません。
どなたか教えていただけないでしょうか。
出来ればNULLになった品番がメッセージボックスにでればベストなんですが・・・
よろしくおねがいします。

A 回答 (3件)

IsNull()で調べてTRUEだったらMsgBoxで表示すればいいのではないですか。

    • good
    • 1
この回答へのお礼

アドバイスありがとうございます。
出来ればもっと詳しく教えていただきたいのですが・・・
初心者なもので・・・すいませんおねがいします。

お礼日時:2009/08/13 16:47

詳しくと言われても…



受注テーブルの品番にNulのレコードlがあるんですよね
レコードを順繰りに検索して品番がNullのレコードから必要なフィールドの内容を
MsgBoxで表示すればいいんじゃないですか。
    • good
    • 0

どれだけIsnullの行があるかわからない(少数予想としても)


MsgBoxで出すのは、1レコードごとになりやすい、のでしつこいのでは。
だからIsNULLを条件にしてクエリをつくり(実際はSQL文が実行されるのと等しい)、そのクエリをVBAの処理の始めに実行してはどうでしょう。
VBAで、と言う質問のリクエストの割りに、「詳しく教えていただきたいのですが・、」はアンバランスだ。
ーー
例データ
受注テーブル(クエリでも同じ)
ID商品コード受注数
1112
211412
3124
412622
クエリのデザイングリッドで
受注数
受注
抽出条件 Is Null(Isのあと1スペース空ける)
他のフィールドは略。
実行結果
ID商品コード受注数
1112
3124
SQLは SQLビューで
SELECT 受注.ID, 受注.商品コード, 受注.受注数
FROM 受注
WHERE (((受注.受注数) Is Null));
ーー
モジュールから呼び出し。
Sub test13()
DoCmd.OpenQuery "受注 クエリ", acViewNormal
End Sub
あるいは、この後の処理のため、ADOなどで1レコードずつを捉えられるよう呼び出せるようにしたいのか。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!