• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ACCESS VBA Parametersで or演算子を使用するには)

ACCESS VBA ParametersでOR演算子を使用するには

このQ&Aのポイント
  • ACCESS VBA ParametersでOR演算子を使うための方法と、実行時に発生するエラーメッセージの解決策について説明します。
  • 抽出クエリを作成し、抽出条件に「[WWW]」を設定しています。しかし、指定したコードの実行時に「カレントレコード無し」というメッセージが表示されます。この問題の解決策を示します。
  • 指定したコードの「Qdf.Parameters("WWW") = "01" OR "02"」の部分が誤っているため、エラーメッセージが表示されています。正しい演算子使用方法として、「Qdf.Parameters("WWW") = "01" OR Qdf.Parameters("WWW") = "02"」を使う必要があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • piroin654
  • ベストアンサー率75% (692/917)
回答No.2

たとえば、クエリのフィールドにパラメータを 複数設定するとして、[WWW]だけを設定すれば クエリを開いたときにパラメータの入力は一回 しか表示されません。二回表示させようと思えば [WWW] Or [XXX]とする必要があります。つまり 質問の要望ははやや「暖簾に腕押し」のような感じで、 上記のように、一つのフィールドの抽出条件に [WWW] Or [XXX] と設定し、コードで Qdf.Parameters("[WWW]") = "01" Qdf.Parameters("[XXX]") = "02" とすれば、カレントレコードがない、という エラーは出なくなると思いますが。

rei230
質問者

お礼

なるほど!上手く出来ました ありがとうございました。 これからも宜しくお願いいたします。

その他の回答 (1)

  • tohru999
  • ベストアンサー率49% (76/154)
回答No.1

(1)の箇所(Qdf.Parameters("WWW") = " 01" OR "02")は、 日本語にすると、"01" と "02"でor処理(ビット演算)して、WWWのパラメータに代入となります。 ですので、WWWに入るのは、3 (2進数で 01 と 10 で or処理をすると 11 となる。10進数で言うと3)になります。 (1)を、下記のようにすれば、イイんではないでしょうか? Qdf.Parameters("WWW") = "'01' Or '02'"

rei230
質問者

補足

早々に、ご回答ありがとうございます。 しかしながら結果は同じでした。 「カレントレコードがありません~」というメッセージが表示されます。

関連するQ&A