教えて!ExcelVBA!

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

ExcelVBAでフォーム内のリストボックスで選択されているデータをセルに入力する方法

構文

構文は以下の通りです。

Worksheets("シート名").Range("セル範囲").Value = リストボックス名.Value

解説

Worksheets("シート名")は、操作するシートを指定します。Range("セル範囲")は、データを入力するセルの範囲を指定します。例えば、Range("A1")でセルA1にデータを入力できます。リストボックス名.Valueは、フォーム内のリストボックスで選択された値を取得します。この値を指定したセル範囲に入力します。

プログラミング例

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

Private Sub コマンドボタン1_Click()
    ' 選択されたデータをセルA1に入力する
    Worksheets("シート1").Range("A1").Value = ListBox1.Value
    ' 解説:ListBox1で選択されているデータがシート1のセルA1に入力されます
End Sub

上記のプログラムでは、ListBox1で選択されたデータが「シート1」のセルA1に入力されます。コマンドボタン1_Clickというイベントハンドラ内に処理が書かれており、コマンドボタンをクリックすると動作します。

まとめ

リストボックスで選択されているデータをセルに入力するには、リストボックス名.Valueを使用します。入力先のセルは、WorksheetsとRangeで指定します。フォーム内での操作は、イベント(上記の例ではボタンのクリックイベント)を使用してトリガーされます。