
お世話になります
■判らないこと概要
アクセスで複数のコンボボックスの連結検索させ結果をサブフォームに
出す方法がわかりません。
■参考
http://www.moug.net/tech/acvba/0060026.htm
上記の例は検索結果がテキストボックスになっていますがサブフォームが理想です。
■追加機能
1、どのコンボボックスからでも検索できる
2、コンボボックスを一つでも選ぶとサブフォームが自動で絞り込んでいく
可能かどうかもわからず質問しております、わかるかたよろしくお願い申し上げます。
No.5
- 回答日時:
たびたびすみません。
テーブルの項目を見て日付型、テキスト型があったので、これを検索条件にした時、From、Toの初期設定大変ですよね。
そこで、コンボボックスがきちんと昇順で表示されているとの前提で、フォームのオープン時のイベントプロシージャーで以下のソースでコンボボックスの最初と最後の値が取得できます。
Private Sub Form_Open(Cancel As Integer)
Me![From] = Me![コンボ1].ItemData(0)
Me![To] = Me![コンボ1].ItemData(Me![コンボ1].ListCount - 1)
Me![サブフォーム名].Requery
End Sub
itemDataは1件目が0から始まりますので注意して下さい。
この回答への補足
ありがとうございます
以前でいていたエラーは解消されましたが
他のえらーがでます(foamが見つかりません)
何度一から作り直してもうまくいかずいきずまりました。
No.4
- 回答日時:
すみません、No.3の
Private Sub コンボ0_AfterUpdate()
Me![From] = Me![コンボ1]
Me![To] = Me![コンボ1]
Me![埋め込み1].Requery
End Sub
のコンボ0はコンボ1の間違いです。
この回答への補足
返事遅れてすみません
自分のデータに置き換えようやく完成いたしました。
メールでのファイルありがとうございました。
無知な物にメールアドレスへのリスクなんて全然平気です
本当にありがとうございました
No.3
- 回答日時:
>上記の内容でコンボ1に管理番号が表示しない
コンボボックスは非連結にして、値集合ソースに「管理番号検索用」のソース:SELECT データーベース.管理番号 FROM データーベース GROUP BY データーベース.管理番号 ORDER BY データーベース.管理番号;を入れていますか?(ビルダを使用すると便利です)
サブフォームのレコードソースは問題ありません。
>コンボ1に値を入力してエンターを押すとマクロを見つけることができません。
サブフォームの名前ですが、フォームの名前をそのまま使っていませんか?ここで指定するサブフォーム/サブレポートの名前は親フォームで埋め込んだサブフォームをプロパティでみることの出来る名前になります。
マクロがみつかりませんというメッセージが出るのは、イベントプロシージャーではなくマクロを指定しているからです。直接更新後処理に書くのではなく、更新後処理でイベントプロシージャーを選択し以下のコーディングをして下さい。
Private Sub コンボ0_AfterUpdate()
Me![From] = Me![コンボ1]
Me![To] = Me![コンボ1]
Me![埋め込み1].Requery
End Sub
またわからなければ、質問下さい。
No.2
- 回答日時:
No.1です。
私の使用しているのがAccess2000なので処理が違っていたらご容赦願います。(1)親フォームにテキストボックスを追加する。
(2)サブフォームのレコードソースの抽出条件にNo.1の抽出条件を付ける。
(3)親フォーム、開くときのイベントで(1)で作成したテキストボックスへ値を転送(数値型なら、0~99999・・・、フィールドの特性によります。)し、
サブフォームをRequeryします。
me![From]=0
me![To]=99999
me![サブフォームの名前].Requery
(4)コンボボックス更新後のイベント
me![From]=me![コンボボックス名]
me![To]=me![コンボボックス名]
me![サブフォームの名前].Requery
てな感じでどうでしょうか?
この回答への補足
返事ありがとうございます
何度やってもできません下記に情報を記します。
■テーブル名:データーベース
ID オートナンバー主 キー
管理番号 数値
日付 日付/時刻型
名前 テキスト型
記事 テキスト型
■フォーム名:INDEX
コンボ1 管理番号検索用
コンボ2 日付検索用
コンボ3 名前検索用
コンボ4 記事検索用
を生成
試しにコンボ1に
更新前処理:me![From]=0me![To]=99999me![サブフォーム].Requery
更新後処理:me![From]=me![コンボ1]me![To]=me![コンボ1]me![サブフォーム].Requery
としました。
テキスト1
を生成
■サブフォーム名:サブフォーム
レコードソースに
SELECT データーベース.ID, データーベース.管理番号, データーベース.日付, データーベース.名前, データーベース.記事
FROM データーベース
WHERE (((データーベース.管理番号)>=[Forms]![INDEX]![テキスト1FROM]
And (データーベース.管理番号)<=[Forms]![INDEX]![テキスト1TO]));
としました。
今までずっとやってましたができません;;
エラーになります。
再度ご教授くださいお願いします
■エラー及び不具合箇所
上記の内容でコンボ1に管理番号が表示しない
コンボ1に値を入力してエンターを押すと
'me![From]=0me![To]=99999me!サブフォーム'マクロを見つけることができません。
とでます。
宜しくお願い申し上げます
No.1
- 回答日時:
各コンボボックスに対し可視=いいえでFrom・Toのテキストボックスを作成し、初期値として、From=最小値、To=最大値をVBAで送り込みます。
サブフォームの元となるクエリに抽出条件を
>=[Forms]![親フォーム名]![テキストボックスFROM] And <=[Forms]![親フォーム名]![テキストボックスTO]
と付けておきます(いくつでもフィールドは選択可能です)。
コンボボックスが選択されるる度に、更新後処理でFrom=コンボボックスの値、To=コンボボックスの値を送り込み、サブフォームをRequeryすれば、該当するデータの絞り込みが可能です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessのコンボボックスでリス...
-
ACCESS コンボボックス 抽出 ...
-
accessでオートコンプリート機...
-
アクセスで大分類・中分類・小...
-
Access 個別部署名テーブルから...
-
パススルークエリのデータ件数...
-
Access 帳票フォームのコンボボ...
-
Accessフォーム 大分類→小分類...
-
Accessのクエリで抽出したデー...
-
Oracleで文字列型の時間を引き...
-
Accessのコンボボックスの値が...
-
ACCESSでコンボボックスにSQLで...
-
帳票フォームでのあるコンボボ...
-
エクセルで、抽出したデータだ...
-
ACCESS 複数のフォームから同一...
-
Access サブフォームでの選択行...
-
「パラメータが少なすぎます。3...
-
ExcelのComboboxでマウスのスク...
-
【AccessVBA】レコードセットOp...
-
前のレコードの値を自動で入れたい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Accessのコンボボックスでリス...
-
Accessのコンボボックスの値が...
-
Accessフォーム 大分類→小分類...
-
帳票フォームでのあるコンボボ...
-
Accessのコンボボックスのデフ...
-
ACCESSでコンボボックスにSQLで...
-
accessでオートコンプリート機...
-
ACCESSクエリ抽出条件について
-
ACCESS リストボックスの字の色...
-
SQLサーバーからひっぱるACCESS...
-
Access リスト選択したレコード...
-
アクセスのフォームのコンボボ...
-
Access 帳票フォームのコンボボ...
-
アクセスでコンボボックスを展...
-
リストボックスの値の保存
-
MS-ACCESSについて
-
Accessのフォーム(コンボボッ...
-
Accessフォーム作成中なのですが
-
リストボックスの時はリンク先...
-
[Access2003]コンボボックスと...
おすすめ情報