使いやすいように設計された Microsoft リレーショナル データベース管理システムのファミリ。
コンボボックス名の前に、Forms![フォーム名]! を付けてください。
Where条件式 [一覧表示クエリ(受付番号順)]![受付番号] Like Right(Forms![フォーム名]![対象年度],2) & "*"
当然、フォーム名は実際のフォームの名前にしてくださいね。
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
式の設定がよく分からないので、教えてください。
例えば、西暦下2桁+"-"+3ケタ連番(14-001等)で構成される「受付番号」を含む一群のデータがあります。
これらを一覧表示(表形式)するフォームを作成しています。
フォーム上に西暦が入ったコンボボックスを配置し、あるボタンを押すと「受付番号」をキーにしてフィルタを実行するようにし、フィルタのWhere条件式には表示されている西暦の下2桁から前述の受付番号を生成して代入するようにしています。
≪マクロ≫ (フィルタの実行では当該西暦1年分の受付番号の抽出を行う)
…
…
フィルタの実行
フィルタ名 空白
Where条件式 [クエリ名]![受付番号] = 'Like Right([フォーム名]![コンボボックス名],2)' & "*"
コントロール名 空白
…
ここで、上記の記述の他、シングルクォーテーションやダブルクォーテーションの位置(括る範囲)をいろいろ変えてみましたが、実行結果はフォーム上に何も表示されません。
どのように記述したら、正しくフィルタが実行され、結果が表示されるのでしょうか?
使いやすいように設計された Microsoft リレーショナル データベース管理システムのファミリ。
ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。
質問作成者が受け入れた回答
コンボボックス名の前に、Forms![フォーム名]! を付けてください。
Where条件式 [一覧表示クエリ(受付番号順)]![受付番号] Like Right(Forms![フォーム名]![対象年度],2) & "*"
当然、フォーム名は実際のフォームの名前にしてくださいね。
hatena19 様
ありがとうございます。
できました!
マクロビルダーでは、自身のフォーム上のコントロール類を指定すると、フォーム名が入らないので、その記述に何も疑問を持っていませんでした。
やはり、きちんと指定しなければならないのですね。
勉強になりました。
ありがとうございました。
hatena19 様
返信、ありがとうございます。返信が遅くなり、申し訳ありません。
教えていただいた式を書き込みましたが、「パラメータの入力」ダイアログが出てしまいます。
Where条件式 [一覧表示クエリ(受付番号順)]![受付番号] Like Right([対象年度],2) & "*"
フィルタの実行はオプショングループで配置したトグルスイッチを押すことで開始され、同一フォーム上に配置されたコンボボックス(対象年度)にある数値(西暦4ケタ)を参照して導くように考えています。
フィルタを実行すると表示されるダイアログ(パラメータの入力)に該当する西暦(4ケタ)を手動で入力すると、結果は表示されます。
クエリ上で、正しく認識されていないような気がするのですが…。
この考え方(やり方)が間違っているのでしょうか。
下記の式でどうでしょうか。
[受付番号] Like Right(Forms![フォーム名]![コンボボックス名],2) & "*"