Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


2114 / 2272 ツリー ←次へ | 前へ→

【3862】パラメータクエリの条件を変数化したい 山田 04/11/18(木) 9:29 質問[未読]
【3863】Re:パラメータクエリの条件を変数化したい hatena 04/11/18(木) 9:35 回答[未読]
【3864】Re:パラメータクエリの条件を変数化したい 山田 04/11/18(木) 11:08 お礼[未読]
【3865】Re:パラメータクエリの条件を変数化したい hatena 04/11/18(木) 12:40 回答[未読]
【3866】Re:パラメータクエリの条件を変数化したい 山田 04/11/18(木) 13:02 お礼[未読]

【3862】パラメータクエリの条件を変数化したい
質問  山田  - 04/11/18(木) 9:29 -

引用なし
パスワード
   Access2002 mdb での質問です。
パラメータクエリは実行の都度、条件をダイアログボックスから入力しますが、
予め、変数に条件を代入しておき、クエリを実行させる方法は無いのでしょうか?
プログラミングすれば済む事ですが、(簡単便利な?)クエリを使って実行したいのです。
「聞くところによると、dBASE では@を付ければ変数として認識してくれた」?そうですが、Accessでは出来ないのでしょうか?
ご教授お願いします。

【3863】Re:パラメータクエリの条件を変数化したい
回答  hatena  - 04/11/18(木) 9:35 -

引用なし
パスワード
   >パラメータクエリは実行の都度、条件をダイアログボックスから入力しますが、
>予め、変数に条件を代入しておき、クエリを実行させる方法は無いのでしょうか?
>プログラミングすれば済む事ですが、(簡単便利な?)クエリを使って実行したいのです。
>「聞くところによると、dBASE では@を付ければ変数として認識してくれた」?そうですが、Accessでは出来ないのでしょうか?

標準モジュールに簡単な関数を作製すれば可能です。

Public X

Function GetX()
  GetX = X
End Function

クエリで抽出条件欄で

GetX()

と記述する。

【3864】Re:パラメータクエリの条件を変数化したい
お礼  山田  - 04/11/18(木) 11:08 -

引用なし
パスワード
   条件抽出では成功しました。有難うございました。
フィールドへの設定は下記のようにしましたがうまくいきません。

クエリで、kKINGAKUフィールドの隣に HANTEIフィールドを追加し
HANTEI:pX() としました。

そして

Function paramX()
   pX = IIf([KINGAKU] > 1000, "BIG", "SMALL")
End Function

としてクエリを実行すると。
コンパイルエラーとなり「指定した名前では定義されていません」と表示されます

何か間違っているでしょうか?ご教授下さい。

【3865】Re:パラメータクエリの条件を変数化したい
回答  hatena  - 04/11/18(木) 12:40 -

引用なし
パスワード
   >クエリで、kKINGAKUフィールドの隣に HANTEIフィールドを追加し
>HANTEI:pX() としました。
>
>そして
>
>Function paramX()
>   pX = IIf([KINGAKU] > 1000, "BIG", "SMALL")
>End Function
>
>としてクエリを実行すると。
>コンパイルエラーとなり「指定した名前では定義されていません」と表示されます

標準モジュールからは、クエリのフィールドは見えません。
引数で渡す必要があります。
他にもおかしなところがありますね。

Function paramX(V)
  paramX = IIf(V > 1000, "BIG", "SMALL")
End Function

クエリでは、

HANTEI: paramX([KINGAKU])

でどうでしょうか。

【3866】Re:パラメータクエリの条件を変数化したい
お礼  山田  - 04/11/18(木) 13:02 -

引用なし
パスワード
   出来た!!!!!!!!
うまく出来ました。
ほんとに有難うございます。
謝謝!
助かりました。

2114 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078263
(SS)C-BOARD v3.8 is Free