コンボボックスに追加データを即反映させたい

このQ&Aのポイント
  • 新たに作成した食材管理データベースでは、コンボボックスの選択リストにデータが不足しており、反映が遅くて使いづらいという課題があります。
  • 選択リストにデータがない場合、別途「食材メンテナンスフォーム」を開いてデータを追加しなければならず、それを反映させるにはフォームを終了して再度開く必要があります。
  • 現在は「食材メンテナンスフォーム」のイベントにマクロを設定して再クエリを行っていますが、効果がないため困っています。
回答を見る
  • ベストアンサー

コンボボックスに追加データを即反映させたい

新たに食材管理データベースを作りましたが、スタート当初特有のデータ蓄積が薄いこともあり、二度手間三度手間と使いずらいくて困っています。 [困りごとの詳細] 食材管理フォーム「F_食材管理」にコンボボックスを利用して選択入力していますが、コンボボックスの選択リストに該当するデータがないときは、食材管理フォーム「F_食材管理」に配したコマンドボタンで、「F_食材メンテナンスフォーム」を開いてデータを追加しています。しかし、食材管理フォーム「F_食材管理」に即反映できません。反映させる為には、食材管理フォーム「F_食材管理」を一旦終了させる必要があります。尚、食材管理フォーム「F_食材管理」を終了させて再度開けば選択リストに反映されています。 [実施したこと] F_食材メンテナンスフォーム「F_食材管理販売店・F_食材管理食材名・F_食材管理容器姿」をそれぞれ「閉じる時」のイベントにマクロを設定し、アクションに「再クエリ」とし、引数にコンボボックス3個の名前「購入先・食材名・容器姿」をそれぞれに設定しました。しかし、全くもって効果がありませんでした。 [オブジェクトの紹介(関連オブジェクト)] ◆ACCESS2007 ◆入力フォーム F_食材管理:フォームビュー「入力フォーム」 ・1段「連結していません」コンボボックス×3個配置「購入先・食材名・容器姿」 ・フォームにF_食材メンテナンスフォームを開くコマンドボタン「メンテナンス」を配置しています。 ◆テーブル T_食材管理「メインテーブル」 T_食材管理売店名:コンボボックス参照データ T_食材管理食材名:コンボボックス参照データ T_食材管理容器姿:コンボボックス参照データ ◆メンテナンスフォーム F_食材メンテナンスフォーム「以下の3つのフォームを開くコマンドボタンを3個配置」 F_食材管理販売店(データシートビュー):参照先(コンボボックス名)=購入先 F_食材管理食材名(データシートビュー):参照先(コンボボックス名)=食材名 F_食材管理容器姿(データシートビュー):参照先(コンボボックス名)=容器姿 [データベース作成の背景] 食材の特売品「イレギュラー特価・消費期限が比較的短いなど・・・他」を購入(無計画傾向になりやすい)するが、消費期限管理「冷蔵庫内の隅々チェックが面倒」ができていなかったので、廃棄するなどのロスが発生「ゼロにしたい」していた。また、日常的にデータベースの一覧を閲覧「献立を考える」する機会を持てることで、ACCESSデータベースに触れる機会を増やせるのではと考えました。 データベースは購入したものを順次追加していき、消費「チェックボックス」したもや廃棄「チェックボックス」したものにチェック「修正一覧フォームを使って」を入れる様にしています。また、クエリを使って「在庫食材・消費食材・廃棄情報」を一覧フォームで確認できる仕組みです。データが貯まれば傾向「消費期限と消費の関係や消費食材の傾向など・・」を確認できたらと考えています。まだまだ、おおざっぱで雑でもありますが、とりあえず無いよりましとスタートしました。 以上ですが、宜しくお願いします。

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

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率65% (1615/2454)
回答No.1

こちらに似通ったQ&Aがありますので参考にしてみてください。 フォームの再クエリでいけると思います。 https://okwave.jp/qa/q5344767.html

eokwave
質問者

お礼

ありがとうございます。下記履歴から紹介「探索」いただきまして申し訳ございませんでした。取り急ぎのご報告ですが、コンボボックスのリストへ即反映される様になりました。ご面倒をおかけしまして申し訳ございませんでした。今回の件でマクロの再クエリが少しわかった気がしました。本当にありがとうございました。

その他の回答 (1)

  • chayamati
  • ベストアンサー率41% (254/607)
回答No.2

今晩は Private Sub Form_Activate() Me.Requery End Sub でいかがですか コーディング画面で 左のプルダウンからForm、右のプルダウンからActivateを選びます。

eokwave
質問者

お礼

ありがとうございました。ご返事をせず大変失礼をいたしました。大変参考になりましたこと感謝いたします。ありがとうございました。

関連するQ&A

  • コンボボックスのテキスト窓にデータを表示させたい

    オフィスソフト環境:ACCESS2007(諸般の事情により使用中) [アドバイスの背景とお願いしたいこと] ◆アドバイスの背景 コンボボックスを使ったフォームで入力を行っています。テーブルにはID(数値)「食材名、素材名」が入力されるのですが、フォームのコンボボックス「2段目」には素材名(入力済)が表示されません。但し、1段目のコンボボックスには数値ではなく食材名(入力済)が表示されています。 ◆お願いしたいこと(実現したいこと) 入力フォームを過去入力を遡り確認することもありますので、1段目同様に素材名(入力済)を表示させたいと思っています。 [対象オブジェクト] ◆テーブル:T_食材管理「質問対象フィールドのみ記載」 ・テーブル名:T_食材管理:食材名(数値型)、素材名(数値型) ・テーブル名:T_食材名:食材名ID、食材名 ・テーブル名:T_素材名:素材名ID、素材名、食材名ID ◆フォーム:F_食材管理「質問対象オブジェクトのみ記載」 ・フォーム(F_食材管理)のレコードソース名:T_食材管理 [1段目コンボボックスの設定] ・コンボボックス名:食材名(参照テーブル名:T_食材名) ・クエリビルダ設定フィールド:「食材名ID、食材名」 ・書式(列数):2 ・書式(列幅):0cm;2.551cm ・コントロールソース:SELECT T_食材名.食材名ID, T_食材名.食材名 FROM T_食材名 [2段目コンボボックスの設定] ・コンボボックス名:素材名(参照テーブル名:T_食材名) ・クエリビルダ設定フィールド:「素材名ID、素材名、食材名ID(抽出条件:[Forms]![F_食材管理]![食材名])」 ・プロパティーの書式(列数):3 ・プロパティーの書式(列幅):0cm;2.551cm;0cm ・コントロールソース:SELECT T_素材名.素材名ID, T_素材名.素材名, T_素材名.食材名ID FROM T_素材名 WHERE (((T_素材名.食材名ID)=[Forms]![F_食材管理]![食材名])); 説明にだらだらの羅列感をお感じになられるもしれませんが、簡潔に説明ができず申し訳ございません。宜しくお願いします。

  • 追加したデータをコンボボックスへ即反映させたい。

    困っておりますので(私の勝手で申し訳ないですが)、アドバイスをお願いします。 【現状と状況のご説明】 収集した情報を活用する為にACCESSでデータを保存しております。登録した情報を絞込んで検索する為に、入力時に3つの定型項目をコンボボックスを使ったプルダウンメニューの形式で入力しています。 定型項目(3項目)への新たな項目追加は、個別(3つ)のテーブルを作成。そのテーブルからフォームを個別に3つ作成し、情報登録フォーム上にボタン(フォームを開くマクロ)を配して新たな項目を追加しています。 【簡単に構成をご説明】 ・テーブル名:情報登録テーブル(1つのテーブル) ・入力フォーム名:情報登録フォーム(3つのコンボボックス:A・B・C) ・テーブル名:情報項目テーブル(3つのテーブル) ・情報項目フォーム名:Aフォーム、Bフォーム、Cフォーム 【困っていること】 情報登録フォームから情報項目フォーム(A・B・C)を開いて、項目を追加したあと情報項目フォームを閉じても、開いている情報登録フォームのコンボボックスへ反映させられず(コンボボックスのメニューに未反映)、一度、情報登録フォームを終了させて、再度情報登録フォームを起動させるしかない状況です(そうすれば、コンボボックスのメニューに反映)。 【希望】 情報登録フォームを開いたままで、情報項目フォーム(A・B・C)に追加した項目をコンボボックスへ即反映させ、情報登録力フォームへの即入力を可能にさせたい。 以上ですが、宜しくお願いします。

  • コンボボックスを使った入力の改善

    コンボボックスを使った入力を全てのデータベースで利用しています。しかし、各コンボボックスがそれぞれ独立「単体動作」しているので、コンボボックスの初段目「最初」はレコード数が少ないのですが、2段目3段目になると選択候補が累積表示されるので、候補の数も多くなり使いづらさを感じるデータベースも増えました。この状況を改善したいと思っていますので、宜しくお願いします。尚、データベースで設定しているコンボボックス全てに言えることでもありますので、以下のケースを紹介させていただきますので、アドバイスをお願いしたいと思います。 [現状でのやり方] コンボボックス参照オブジェクトは以下の構成にて、コンボボックスは独立していて連動していません。なお、参照データの追加作業は別途作成したフォームを、データ入力フォームに配したコマンドボタンで開いて行っています。 [コンボボックス関連オブジェクト(例)] コンボボックス名:都道府県(値集合ソースで都道府県のみ選択) テーブル名:都道府県テーブル フィールド名:ID、都道府県 フォーム名(参照データ追加):都道府県追加フォーム ※「新規追加後の入力フォームへの即反映はアドバイスにより完結済」 コンボボックス名:市町村(値集合ソースで市町村のみ選択) テーブル名:市町村 フィールド名:ID、市町村 フォーム名(参照データ追加):市町村追加フォーム ※「新規追加後の入力フォームへの即反映はアドバイスにより完結済」 [改善させたいこと] コンボボックス「都道府県」で東京都を選択したとき、次のコンボボックス「市町村」では東京都の市町村だけが次の候補として表示させたいと思っています。又、現在は蓄積データの絞り込み検索で設定していますが、選択コンボボックスの次のコンボボックスを自動プルダウンさせ、候補も同時に表示させ入力できればと考えています。 以上ですが、宜しくお願いします。

  • コンボボックスに付いて

    エクセル2000を使用しています。コンボボックスに付いて教えて下さい。 今コンボボックス(ユーザーフォーム使用)を12個一組 計5組 にて簡単な選択データを作っています。 コンボボックスの値はシートより読み出し値を表示させているのですが、この12個のコンボボックス1~12みたいな感じで 簡単に一まとめ出来ないでしょうか? 12個一組は内容は同じです。とりあえず一つ一つのコンボボックスに対してシートを参照するようにしましたが、 もっと簡単に簡略化出来ないものなのでしょうか? ご教示お願い致します。初心者ですので例などで教えて頂ければ幸いです。

  • コンボボックスの更新

    アクセス2000を使用しています. 業務名というコンボボックスがあるサブフォームをいくつかのフォームで表示しています。 コンボボックスの内容を編集したり追加、削除も出来るように業務名一覧というフォームを作成して、閉じるボタンをクリックした時のイベントで更新をする作業をしたいのですが、 Private Sub cmd閉じる_Click() DoCmd.Close Forms!F業務名一覧.Requery で更新するという所までは分かるのですが、 Forms!フォーム名.サブフォーム名.コンボボックス名.Requery とすると、開いていないフォームがあるためにエラーになってしまいます。 なにか良い方法があれば教えて下さい.

  • コンボボックスからデータ抽出

    環境:ACCESS2000、VB6.0、win2000 アクセスのフィールド名をフォームロード時点にコンボボックスに表示したいのですが。 フィールド名をコンボボックスに表示させることは可能でしょうか??  

  • ACCESSのコンボボックスデータについて

    Microsoft Office Accessのフォームに作成したコンボボックスで選択できるデータは一つしかダメなんでしょうか? コンボボックスには3項目のデータがあり2番目及び3番目のデータもクエリーの抽出条件として使いたいのですが可能でしょうか? 良い方法があれば教えて頂けないでしょうか。

  • Access2003でコンボボックスからデータを抽出したい

    自己啓発でAccess2003を勉強しています。 Access2003でコンボボックスで名前を選択して、データ(住所)を抽出したものをリストボックスに表示させたいのですがどこがまちがっているかわかりません。こんなことで3週間ぐらい悩んでいます。 回答またはアドバイスをお願いします。 もしくはもっと簡単なやりかたがあればお願いします。 (1)「氏名」、「住所」のテーブルを作成。テーブル名は「01データ」 (2)「氏名」、「住所」のクエリを作成。クエリ名は「クエリ1」 (3)フォームでコンボボックスとリストを作成。フォーム名は「印刷」 ⇒コンボボックスの名前は「検索」。 ⇒値集合ソースはSELECT [01データ].ID, [01データ].氏名 FROM 01データ; これで「氏名」が選択できた。 (4)クエリの「氏名」抽出条件にLike [forms]![印刷]![検索] (5)検索するマクロを作成。マクロ名「M検索」 アクションは 全レコードの表示 フィルタの実行 ⇒Where条件は[Forms]![印刷]![検索]=[クエリ1]![氏名] (6)マクロ「M検索」をコンボボックスのプロパティ「イベント」タブから変更時に設定する。 (7)フォーム「印刷」を開き、コンボボックスで氏名を選択すると『クエリ1!氏名』と表示されてしまいます。 (8)フォーム「印刷」のリストボックスは全レコードが表示されている。

  • コンボボックスで

    コンボボックスで、あるテーブルを参照してリストを出す場合、リスト中になかった場合に、コマンドボタンを押せばテーブルの追加フォームが出てきて入力できるようにしています。この場合に、入力フォーム内で終了(保存)ボタンを押せば、自動的にコンボボックスの中に入り、かつもう一度選択しなくても表示されているような操作はできないものでしょうか?

  • コンボボックス

    コンボボックスにデータベースの値セットしたいですが、 具体的なやり方がわかりません。 VS.Net2003 データはデータセットに設定しているのですが OleDbDataAdapter1.Fill(DsBurando1) cmb1.databind()やると コンボボックスの中身は一件目のデータしかなくて、 しかも立て表示しているのですが・・・ どんな設定が必要でしょうか。 よろしくおねがいします。

専門家に質問してみよう