単位の関係で50が49.95に変わりますが、気にする必要はありません。プロパティの下の方にwidthの数値があるので、合計がこれより少なくします。次に、RowSourceを設定します。これは、マクロで後から指定しても構いません。項目行を除くデータの範囲をSheet1!G2:I18として入れておきました。必要なマクロを設定します。標準のモジュールシートに、フォームを表示させるマクロを設定します。ここで、RowSourceを指定しても良いです。その場合の例として、入れてありますが、一般的には条件によってリストの中身が異なるので、プロパティで設定する必要は無いと思います。UserForm1のプライベートモジュールに下のようなコードを入れます。ここでは、ボタンを選択確定に使うので、フォームの×ボタンを無効にするマクロは外しました。listbox1がクリックされたときのマクロは、クリックした位置を取得し、この値を他でも使うこととし、Dimで定義したgy変数に取り込みます。この値が-1のときは、どこもクリックしていない状態なので、Label1のキャプションにメッセージを置き、そうでないときにこれを書換え、gy位置の1列目のデータをTextbox1に表示します。ここは、本当はラベルで良いです。このTextbox1の中身が変化したときに、シートの3つのセルをクリアします。コマンドボタンがクリックされたときに、リストのデータを3つのセルに反映させています。フォームを使う目的は、このようなリストボックスが必要な場合です。単純な表示や入力は、MsgboxやInputboxの方が手軽に使えます。このサンプルで、リストを表示させ、そこから選んだものを入力に使うというフォームが理解できると思います。リストボックスにデータを並べるには、additemを使う方法もあります。この場合は、ListBoxの項目行にデータを表示することは出来ないと考えた方が良いです。そのかわり、シートにデータを並べなくとも、直接指定できます。.AddItemから複数列の表データを表示させ、この中の項目を選択する例を紹介します。サンプルは、一つのシートにまとめてありますが、G1:I18のリストをフォームのリストボックスに表示させ、ここで選択したものをシートのA4、B4、B5に表示するようにしています。Listbox1のプロパティを表示させ、ここで設定して行きます。複数列のリストを表示するために、BoundColumnとColumunCountに、ここで必要な3列の3を入れます。ColumunHeadは、項目行を表示するかの指定です。