Microsoft Access 掲示板

サブフォームでのDlookup「型が一致しません」の対処方法について / 4

7 コメント
views
4 フォロー
4

りんご 様

お忙しい中大変ご丁寧にありがとうございました。

>抽出条件無しでの動作確認、単独条件での動作確認、パラメータの代わりに適当な値を入れて動作確認はどうでしたか?

抽出条件無での動作確認は問題ございませんでした。
また、単独条件での動作確認ですが、仕入商品ID(オートナンバー型)を単独条件としたところ、本来導き出したい数値とは異なるものが代入されました。
わたくしの勝手な推測なのですが、仕入商品ID(オートナンバー型)は仕入先ID各社の仕入商品テーブルがあり、仕入商品ID(オートナンバー型)が重複するため、別のものを代入しているのではないかと考えます。
パラメータの代わりにダイレクトに仕入先IDを3仕入商品IDを3として動作してみたところ、
いずれも「エラー13 型が一致しません」となりました。
わたくしの式の書き方が悪いことが原因と思います。(恥ずかしながら、調べながら利用している素人です)
下記3通り試しました。
入数 = DLookup(入数, "UQ仕入商品一覧", "仕入先ID =  3" And "[仕入商品ID] =  3")
入数 = DLookup(入数, "UQ仕入商品一覧", "[仕入先ID] =  3" And "[仕入商品ID] =  3")
入数 = DLookup(入数, "UQ仕入商品一覧", "Forms![F仕入入力]!仕入先ID =  3" And "[仕入商品ID] =  3")

>念の為、コンボボックスについても確認です。仕入先IDや仕入商品IDですが、1列目ならば連結列は1、2列目ならば連結列は2となっていますか?

プロパティシートにて連結列確認いたしました。
連結列はコンボボックスすべてにおいて「1」でした。

>念の為、仕入先IDや仕入商品IDについても確認です。オートナンバー型との事ですか、0001、0002、0003みたいな感じではないですよね?実はNULLもあったり、なんてことはないですよね?

仕入先IDと仕入商品IDは頭に0等は入らず全て整数の「1.2.3…」となっております。
またNULLはございません。
全てのIDには必ず整数が入るようにしております。

hatena様から教えていただきました通りに変更したところ、入数には正しい数値が代入されました。

通報 ...