私は、ほとんど使いませんが、ListBoxのRowSourceプロパティを使う方法もあります。
というリストがSheet1に入力されているとき
UserFormのデザイン段階で、[プロパティ]ウィンドウの[RowSource]プロパティに「Sheet1!A2:A5」と設定します。すると、デザイン段階で、リストボックスにはワークシートのデータが反映されます。
UserForm表示中に、セルのデータが変更されると、リストボックスにも反映されます。
Private Sub CommandButton1_Click() Range("A4") = "立花" End Sub
UserForm表示中に、RowSourceプロパティを変更することも可能です。
Private Sub CommandButton1_Click() ListBox1.RowSource = "Sheet1!B2:B4" End Sub
私がRowSourceプロパティを使わないのは、RowSourceプロパティを設定したリストボックスでは、AddItemメソッドで新しい項目を追加できなかったり、RemoveItemメソッドで任意の項目を削除できないからです。
プロパティを設定するだけという手軽さの反面、やりたいことを自由にできないという不便さを感じます。やっぱ、自分で操作するデータは、自分でコーディングするのが基本だと思いますしね。いや、もちろん私感ですけど。