• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:RowSource プロパティ)

Access VBAでコンボボックスの値を設定する方法

このQ&Aのポイント
  • Access VBAを使用してコンボボックスの値を設定する際には、RowSourceプロパティを使用します。
  • RowSourceTypeを「値リスト」とし、RowSourceに値を指定します。
  • 文字列を指定する場合、ダブルコーテーションで囲んで指定する方が良いです。

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

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

ゴメン 添付画像が間違っていました。

sgnwhszl
質問者

お礼

ありがとうございました。

その他の回答 (2)

  • DexMachina
  • ベストアンサー率73% (1287/1744)
回答No.3

値集合タイプ(RowSourceType)プロパティを「値リスト」に設定した場合、 値集合ソース(RowSource)プロパティでは「,(カンマ)」/「;(セミコロン)」が ともに区切り文字として認識されます。 (但し、カンマは、プロパティ設定後に、自動でセミコロンに変換されます) ですので、  a)選択肢の中に上記の区切り文字を含む値がある場合は「"/'」で括り、   含まない場合は括らない という場合分けが考えられます。 (更に、ある項目でのみ区切り文字を含む場合、含むもののみを「"/'」で  括る、という考え方もあり得ます) その一方で、選択肢の構成によって「"/'」による括りの有無を切り替える ことにしてしまうと、後々メンテナンスで一括で更新・変換を掛けようとした 際に、余計な場合分けが必要になる可能性があります。 そういう意味では、  b)文字列型の列の項目は一律「"/'」で括り、数値型の列の項目は   括らない  c)列毎のデータ型に拘わらず、全ての項目を「"/'」で括る という対応もあり得ます。 (コンボボックスの『列数(ColumnCount)』プロパティが「2」以上の場合も  含めた想定で説明をしていますので、ご注意のほど) 『「"/'」で括る必要がないことがわかっているのに敢えてそれを入力する 手間』と、『不統一性による弊害の可能性』をどう考えるか、ということに なりますので、これらのメリット・デメリットを踏まえた上で、後は個人の 好み・判断ということになるかと思います。 因みに、私の場合は「b」がメイン・・・だったはず(汗) (それ以前に、『値集合タイプ』=「テーブル/クエリ」が専らではありますが)

sgnwhszl
質問者

お礼

ありがとうございました。

  • chayamati
  • ベストアンサー率41% (260/624)
回答No.1

>ではどちらがいいのでしょうか? このような事は両方とも実行すればすぐわかるはずです。 自主性を持って取り組んでください。 ただし ACCESS2010では区切り記号はセミコロン(;)のようです コンボ.RowSource ="aaa;bbb" 追伸 今まで他のデータベースソフトを使っていたのですか   ACCESSこれからですか   1.コンボボックスは通常コンボボックスのプロパティー設定でよいのではないでしょうか   2.値リストを使うのは参照項目が変動しない性別等に限って     テーブル参照にします。     ※参照項目テーブルにすると、運用現場で参照項目変更が可能です

sgnwhszl
質問者

お礼

ありがとうございました。

関連するQ&A