この記事では、Excelのシートの値をListboxに表示させる方法についてご説明します。
フォーム上に設置されたListboxはこちらの記事で説明しています。
【Excel】フォーム上に設置されたListboxにExcelのシートの値を表示させるには
【動画】Excelのシートの値をListboxに表示させる実際の動き
本題に入る前に、まずは次の動画をご覧ください。
ListboxのListFillRangeプロパティに表示させたいセルの範囲を指定することで、簡単にExcelのシートの値をListboxに表示させています。
他に、データの列分表示させたり、ヘッダを表示させています。
Excelのシートの値をListboxに表示させるまでの手順
Excelのシートの値をListboxに表示させるまでの手順は次の通りです。
手順の説明
【STEP.1】Listboxをシートに配置する
Listboxをシートに配置します。
【STEP.2】Listboxに表示させるデータをシートに用意する
Listboxに表示させるデータをシートに用意します。
【STEP.3】表示させるデータのセルの範囲をListboxのListFillRangeプロパティに設定する
表示させるデータのセルの範囲をListboxのListFillRangeプロパティに設定します。
上記の画面のListFillRangeプロパティの設定は「$A$28:$D$37」となっています。
この設定は、セル「A28」からセル「D37」の範囲のデータを表示させる、という意味です。
【STEP.4】表示させるデータの列が複数ある場合は何列表示させるかColumnCountプロパティに設定する
表示させるデータの列が複数ある場合は、何列表示させるかColumnCountプロパティに設定させます。
※ColumnCountプロパティの初期値は「1」
【STEP.5】Listboxにヘッダを表示させる場合はColumnHeadsプロパティをTrueに設定する
Listboxにヘッダを表示させる場合はColumnHeadsプロパティをTrueに設定します。
なお、【STEP.3】のListFillRangeプロパティに設定した行の一つ上のセルの値がヘッダに表示されます。
例えば「$A$28:$D$37」と設定した場合は、A27からD27のセルの値がヘッダに表示されます。(下の画像をご覧ください)
A27の「列1」、B27の「列2」、C27の「列3」、D27の「列4」の文字列がヘッダに表示されています。
※ColumnHeadsプロパティの初期値は「False」
Excelのシートの値をListboxに表示させた結果
Excelのシートの値をListboxに表示させた結果は次の通りです。
【参考】Listboxが設置されたシートとは別のシートにあるデータをListboxに表示させる方法
Listboxが設置されたシートとは別のシートにあるデータをListboxに表示させるには、ListFillRangeプロパティにシート名を含めればOKです。
例えば、シート「data」にあるA2からD30のセルの値をListboxに表示させる場合は、ListFillRangeプロパティに「data!$A$2:$D$30」と設定します。
最後に
本記事では、Excelのシートの値をListboxに表示させる方法についてご説明しました。
ListboxのListFillRangeプロパティに設定することで簡単にExcelのシートの値をListboxに表示させることができます。
ただし、ColumnCountプロパティの値と表示させたいデータの列数が一致していないと表示させたいデータがListboxに表示されないので、ColumnCountプロパティの設定は忘れずに行ってくださいね。
プログラミングのスキルを習得するなら
プログラミングのスキルを習得したい、今のスキルをもっと高めたい、そう考えているなら「プログラミングスクール」がおすすめです。
プログラミングのスキルの基礎を身につけるなら「TechAcademy」で1週間の無料体験があるので、これで「プログラミングの基礎」を学ぶのにおすすめですよ。