- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBA ユーザーフォーム リストボックス)
VBAユーザーフォームでリストボックスの表示方法
このQ&Aのポイント
- VBAユーザーフォームを使用してリストボックスにセルの値を表示する方法について教えてください。
- リストボックスに対象セルの値を表示するためには、UserForm_Initializeイベント内でListBox1.Listプロパティを使用します。
- 例えば別のシートのセルを表示したい場合、ListBox1.Listに対象のセル範囲を代入する前に、該当するシート名を指定する必要があります。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
提示のコードを踏襲するのでれば With ThisWorkbook.Sheets("sheet3") ListBox1.List = Range(.Range("M5"), .Cells(Rows.Count, 14).End(xlUp)).Value End With こんな感じと思います。
その他の回答 (1)
- SI299792
- ベストアンサー率47% (772/1616)
回答No.2
ListBox1.List = Range(Sheets("sheet3").Range("M5"), Sheets("sheet3").Cells(Rows.Count, 14).End(xlUp)).Value ですね。前の方の回答でもいいです。 なぜこうなるか、次のように分解すればわかると思います。 Set Cell1 = Sheets("sheet3").Range("M5") Set Cell2 = Sheets("sheet3").Cells(Rows.Count, 14).End(xlUp) ListBox1.List = Range(Cell1, Cell2).Value ’ 1つの式にまとめると、バグの元です。私ならこうします。 ' Dim Row As Long ' Row = Sheets("sheet3").Cells(Rows.Count, "N").End(xlUp).Row ListBox1.List = Range("sheet3!M5:N" & Row).Value エラーが出ても変数Row を見ればどこが悪いかわかるからです。
質問者
お礼
ご丁寧な解説までしていただき本当にありがとうございます。 また一つ勉強になりました。
お礼
ありがとうございます。 目的が果たせました。