こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

「パラメータの入力」ボックスが表示される

Access2013でレポートを開いたときに「パラメータの入力」ダイアログボックスが開いてしまいます。
どこかでクエリにない識別子を使っているからというのはわかるのですが、プロパティを見てもそれがどこで使われているのか見当がつきません。
使っている場所を簡単に調べる方法はありませんか?

投稿日時 - 2017-03-02 09:06:54

QNo.9300014

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

レコードソースのクエリを単独で開いて問題ないとして
レポートのプロパティ で「フィルター」とか「並べ替え」に余計なものが書かれている、
というのがよくある。

投稿日時 - 2017-03-04 02:58:31

ANo.2

>使っている場所を簡単に調べる方法はありませんか?

以下参照。
https://support.office.com/ja-jp/article/Access-%E3%81%AB%E3%82%88%E3%82%8A%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%83%BC%E5%80%A4%E3%81%AE%E5%85%A5%E5%8A%9B%E3%81%8C%E6%B1%82%E3%82%81%E3%82%89%E3%82%8C%E3%82%8B%E3%81%AE%E3%81%AF%E3%81%AA%E3%81%9C%E3%81%A7%E3%81%99%E3%81%8B-a7344543-e758-4785-8433-420eb0f0b48e

上記のように「パラメータの入力」のダイヤログボックスに「重大なヒント」が掲示されています。

なお、上記記事に該当しないケースで厄介なのが「フォーム上に配置したテキストボックスの値によって抽出範囲を変更しているクエリ」を「レポートのデータソース」に指定している場合です。

このレポートは「抽出範囲を決めているユーザーフォーム」を開いている状態で開けば、何の問題もなく開かれます。

しかしフォームを開かずにレポートだけを開くと「抽出範囲を決めている、ユーザーフォームのテキストボックス」が画面に開かれていないため、それが「パラメータの入力」として入力要求されます。

例えば

SELECT *
FROM 仕入れテーブル
WHERE [仕入先コード]=[Forms]![フォーム1]![仕入先コード条件];

と言うクエリが、レポートの表示内容になっている場合を考えます。

「フォーム1」のフォームを開いて「仕入先コード条件」のテキストボックスに仕入れコードを入力した状態でレポートを開くと、何の問題もなくレポートが表示されます。

しかし、フォームを開かずに、いきなりレポートを開くと

パラメータの入力
仕入先コード条件

と言うダイアログボックスが出て来て、値の入力を要求されてしまいます。

このように「必要なユーザーフォームが開かれていない時」は、注意が必要です。

投稿日時 - 2017-03-02 11:32:53

ANo.1

Q、簡単に調べる方法はありませんか?
A、SQLを目で見て調べる。

10数秒で調査は終了すると思いますよ。

投稿日時 - 2017-03-02 09:18:32