- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:コンボボックス活用法)
コンボボックス活用法 | 商品名とコードの置き換え方法
このQ&Aのポイント
- コンボボックスを使用して、サーバーの巨大データベースから商品名を選択すると、商品コードに置き換わる方法を探しています。ユーザーフォームのコンボボックスを利用して操作しやすくすることが目標です。
- テーブルを商品名とコードの組み合わせにして切り出す方法も考えましたが、桁数や英字の有無などが複雑で処理が難しくなります。また、将来的には商品名に区切り記号が採用される可能性も考慮しなければなりません。
- 現在の状況では、コンボボックスから値を取得すると商品名が返ってしまい、商品コードが取得できません。解決策を探しています。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
Sheet1のA1、B1に表題『商品名』、『商品コード』があり、A2からB11にデータが入力されているとします。 ユーザーフォーム上のコンボボックスのプロパティを (1)RowSourceを A2:B11 ・・・コンボボックスのリスト (2)ColumnHeadsを True ・・・列見出しを表示 (3)ColumnCountを 2 ・・・・・2つの列を表示 (4)TextColumnを 2 ・・・・・コンボボックスのエディットボックスに2列目を表示 (5)ControlSourceを D2 ・・・セルD2に出力する場合 (6)BoundColumnを 2 ・・・・・セルD2には2列目を出力 (7)ColumnWidth ・・・・・・『60;60』とか、見やすい様に設定 上記の設定くらいで、コードは何も書かずに商品名に対応するコードが取得できると思いますが??? 『商品名』、『商品コード』のテーブルが完成している前提ですが・・・ 新商品が増えようが何ら関係ないような・・・商品名でソートくらいは必要かもしれませんが・・・ 私の誤解釈かもしれません。(当方、Excel97です)
お礼
>(1)RowSourceを A2:B11 ・・・コンボボックスのリスト の部分だけは、頻繁に追加の可能性があるので、 BCSIZE = Range("A1").End(xlDown).Row CombBox1.RowSource = "商品情報!A2:B" & BCSIZE と云うマクロで取得するようにしたところ、理想通りに機能しました。 本当にありがとうございました。