教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

ExcelVBAでフォーム内のコンボボックスに値を直接入力できないように設定する方法

構文

構文は以下の通りです。

コンボボックス名.Style = スタイル

解説

コンボボックス名.Styleを使用して、コンボボックスのスタイルを設定できます。スタイルの種類は、以下の通りです。

【スタイル】

定数 内容
fmStyleDropDownCombo 0 リストから選択するか、コンボボックスに直接値を入力できます
fmStyleDropDownList 2 リストからのみ選択でき、直接値を入力することはできません

プログラミング例

具体的なプログラミング例を紹介します。

Sub コンボボックス設定()
    コンボボックス1.Style = fmStyleDropDownCombo ' ユーザーが直接入力可能
    コンボボックス1.Style = fmStyleDropDownList  ' ユーザーが直接入力不可
End Sub

上記のプログラムは、コンボボックス1.Styleを設定するだけで、ユーザーが値を入力する条件を制限できます。

まとめ

コンボボックスのスタイルを設定する事で、ユーザーはリストから選択(コンボボックスに直接値を入力可)やリストからのみ選択(直接値を入力することは不可)の指定ができます。