次の方法で共有


ComboBox.ColumnWidths プロパティ (Access)

ColumnWidths プロパティを使用して、複数列コンボ ボックス内の各列の幅を指定します。 読み取り/書き込みが可能な String です。

構文

ColumnWidths

ComboBox オブジェクトを表す変数。

注釈

ColumnWidths プロパティは、Windows コントロール パネルの [地域オプション] ダイアログ ボックスの [数値] タブの [測定システム] ボックスで選択されている測定システム (米国またはメトリック) に応じて、各列の幅をインチまたはセンチメートルで指定する値を保持します。 既定値は 1 インチまたは 2.54 cm です。 ColumnWidths プロパティでは、リスト ボックスまたはコンボ ボックスの各列の幅の下限は 0 で、上限は 22 インチ (55.87 cm) です。

複数の列幅を入力するには、各値をセミコロン (;) で区切ります。また、セミコロンの代わりに、[地域のプロパティ] ダイアログ ボックスの [数値] タブの [区切り記号] で選択した区切り文字も使用できます。

幅が 0 の列は表示されません。 ColumnWidths プロパティの一部またはすべてを空白にすることができます。 空白の設定にするには、前に値を付けずに区切り記号を入力します。 値を空白にすると、列の数と、コンボ ボックスまたはリスト ボックスの幅によって変わる既定の列幅が自動的に設定されます。

コンボ ボックスの場合、表示される最初の列はコントロールのテキスト ボックスの部分に表示されます。

Visual Basic では、文字列式を使用して、列の幅の値 を twip 単位で設定します。 列幅はセミコロンで区切ります。 別の測定単位を指定するには、該当する単位 (cm またはインチ) を設定します。 たとえば、次の文字列式では 3 つの列幅をセンチメートルで指定します。

"6 cm;0;6 cm"

このプロパティを使用して列を非表示にすることもできます。

ColumnWidths プロパティの設定を空白のままにした場合、Access は各列の幅を、リスト ボックスまたはコンボ ボックスの幅全体を列数で割って設定します。

設定した列幅が広すぎてコンボ ボックスまたはリスト ボックス内に完全に表示できない場合、右端の列は非表示になり、水平スクロール バーが表示されます。

一部の列の幅を指定しても、他の列の設定を空白のままにした場合、残りの幅は幅を指定していない列の数で除算されます。 ただし、計算によって求められる最小列幅は 1,440 twip (1 インチ) です。

たとえば、次の設定値は、3 つの列がある 4 インチのリスト ボックスに適用されています。

設定値 説明
1.5 in;0;2.5 in 1 列目は 1.5 インチ、2 列目は非表示、3 列目は 2.5 インチです。
2 in;;2 in 1 列目は 2 インチ、2 列目は 1 インチ (既定)、3 列目は 2 インチです。

3 列目が半分しか表示されないため、水平スクロール バーが表示されます。
(空白) 3 列とも同じ幅 (1.33 インチ) になります。

注:

このプロパティを、データシートの特定の列の幅を指定する ColumnWidth プロパティと混同しないように注意してください。

次の例は、別の列を表示しながら、1 つの列にバインドされたコンボ ボックスを作成する方法を示しています。 ColumnCount プロパティを 2 に設定すると、RowSource プロパティによって指定されたデータ ソースの最初の 2 列が cboDept コンボ ボックスに表示されます。 BoundColumn プロパティを 1 に設定すると、コンボ ボックスの値を調べるときに最初の列に格納されている値が返されるようになります。

ColumnWidths プロパティは 2 つの列の幅を指定します。 最初の列の幅を 0in. に設定すると、最初の列はコンボ ボックスに表示されなくなります。

Private Sub cboDept_Enter()
    With cboDept
        .RowSource = "SELECT * FROM tblDepartments ORDER BY Department"
        .ColumnCount = 2
        .BoundColumn = 1
        .ColumnWidths = "0in.;1in."
    End With
End Sub

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。