現在、ACCESSVBAを用いての作業を行っているのですが、
判定条件として複数条件をDLOOKUP文を使用すると実行時にエラーとなるなどして、
上手く動作しません。
おかしな点がありましたら指摘していただけますでしょうか。
対象テーブルのフィールドAAA~は全てテキスト型となっております。
Me!txtはフォーム上から取得した値、
aaaaはそこまでの処理に使用した変数、
rsはレコードセットとなっております。
レコードセットはExcelのセルを読み取ったデータが格納されており、
これらの変数はそのまえの処理で正常に取得を確認しています。
If DLookup("AAA", "TBL", _"BBB ='" & Me!txt & "'" And _"CCC = '" & aaaa & "'" And _"CCC = '" & Left(rs(1), 3) & "'") = Null Then
よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
> If DLookup("AAA", "TBL", _"BBB ='" & Me!txt & "'" And _"CCC = '" & aaaa & "'" And _"CCC = '" & Left(rs(1), 3) & "'") = Null Then
上記は
If DLookup("AAA", "TBL", _
"BBB ='" & Me!txt & "'" And _
"CCC = '" & aaaa & "'" And _
"CCC = '" & Left(rs(1), 3) & "'") = Null Then
を1行にしちゃったものになりますか?
継続行の _ をそのままに、1行にしてもエラーになるだけです。
条件部分の基本は
"BBB='★1' And CCC='★2' And CCC='★3'"
となると思います。
が、提示あったものでは And が文字列内に含まれていませんね。
★1 ~ ★3 部分を加工していけば良いと思います。
方法としては、提示されたやり方でも良いと思います。
また、以下の様な方法でも・・・・
Dim sWhere As String
sWhere = "BBB='★1' And CCC='★2' And CCC='★3'"
sWhere = Replace(sWhere, "★1", Me!txt)
sWhere = Replace(sWhere, "★2", aaaa)
sWhere = Replace(sWhere, "★3", Left(rs(1), 3))
If IsNull(DLookup("AAA", "TBL", sWhere)) Then
※ Null 判別は = では NG なので、IsNull を使用します。
※ かなりシビアな処理性能を求めるところでないのなら、
後者の方法もありなのかと・・・・
※ 基本となるものを記述しておくと、
CCC='★2' And CCC='★3'
この部分、本当に And で良いんだろうか・・・とか気付きやすい?
"BBB='★1' And (CCC='★2' Or CCC='★3')" ??
ありがとうございます。
= NULLと継続行の _ については、誤って残してしまっておりました。
>And が文字列内に含まれていませんね。
というこちらを意識して記述を修正したところ上手く動かすことが出来ました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Access DLookup vbaで条件を2件設定したい場合どうすればよいでですか? 現在 If( 1 2023/06/28 14:28
- Visual Basic(VBA) ExcelからAccessのテーブルに書き込む時に時間がかかる 1 2022/10/14 20:38
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- その他(Microsoft Office) パワークエリの複数ファイルのデータ統合について 3 2022/07/14 17:06
- PostgreSQL DBFluteについて質問です。 環境:PostgreSQL java8 前提:webアプリケーショ 1 2022/07/07 00:49
- その他(コンピューター・テクノロジー) 【Tableau Desktop】文字列から8桁の数字を日付型(yyyyMMdd)として取得 1 2023/07/31 10:17
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Visual Basic(VBA) VBA初心者です。 VBAで行単位で条件付き書式の色をカウントしたいです。 大量のデータがあるExc 3 2022/06/08 10:02
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
2つ目のレコードの値を取得するには?
Access(アクセス)
-
日付と文字列を条件としてDLookup関数で抽出さ
その他(プログラミング・Web制作)
-
新規レコード行を非表示にしたい
Access(アクセス)
-
-
4
Access DlookUPの複数条件抽出
Access(アクセス)
-
5
VBとアクセスでSQL文に変数を使いたいのですが
Visual Basic(VBA)
-
6
Accessのフォーム上にレコード数とレコード番号の表示
その他(データベース)
-
7
フォームを開くときに、コンボボックスの値を選択(アクセスVBA)
Visual Basic(VBA)
-
8
ACCESS更新クエリで型変換エラー
Access(アクセス)
-
9
Access 最後のレコードに到達するまでループ処理を行う方法
Access(アクセス)
-
10
前のレコードの値を自動で入れたい
PowerPoint(パワーポイント)
-
11
テキストボックスにクエリ結果を表示させたい
その他(データベース)
-
12
Access サブフォームでの選択行の取得
その他(データベース)
-
13
Accessでテーブルの値をテキストボックスに代入するには?
Access(アクセス)
-
14
アクセスVBAのMe!と[ ]
Access(アクセス)
-
15
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
16
Access2007 textboxに入力できない。
IT・エンジニアリング
-
17
ACCESS IIF関数 複数条件の設定について
Excel(エクセル)
-
18
Accessで条件が2つのグループに連番をふる
Access(アクセス)
-
19
サブフォームの新規レコードに移動したい アクセス
Access(アクセス)
-
20
AccessのWHERE句において、変数は使用できますか?
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
昔のテレビっておっぱいが出て...
-
デスクチェア―のガスシリンダー...
-
バンタンのDOPEの最初って ラプ...
-
東京ドームのコンサート、一番...
-
imac2012ってまだ使えますか?...
-
水に映った月明かりを表す言葉
-
Adobe Acrobat と Adobe Reader...
-
複数のテキストファイルをエク...
-
エクセルのユーザーフォームで...
-
TWICEを知らない人
-
VBAで○○:○○と表示させたいのに...
-
BTSがたまに口ずさむ、「ナナナ...
-
TextBoxコントロールを引数とし...
-
【バッチファイル】ホスト名を...
-
DVDFLICKでエラーが出て書き込...
-
全国の最新の金融機関コード・...
-
「少女時代」の「DIVINE」のP...
-
TWICEのメンバーを目が大きい順...
-
新大久保でTWICEの公式グッズが...
-
雪の女王、ボラの少女時代を演...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
昔のテレビっておっぱいが出て...
-
複数のテキストファイルをエク...
-
【バッチファイル】ホスト名を...
-
バンタンのDOPEの最初って ラプ...
-
TextBoxコントロールを引数とし...
-
VBAで○○:○○と表示させたいのに...
-
Adobe Acrobat と Adobe Reader...
-
参照設定は2.8と6.0 6.1とどち...
-
水に映った月明かりを表す言葉
-
TWICEのライブについてです 母...
-
デスクチェア―のガスシリンダー...
-
韓流女と別れたい
-
imac2012ってまだ使えますか?...
-
韓流好き妻の行動に怒り…私は狭...
-
減少率の計算方法
-
PCの不具合について
-
東京ドームのコンサート、一番...
-
角度の求め方
-
latestの対義語
-
KPOP女性4皇
おすすめ情報