- ベストアンサー
ユーザーフォームでボックスを表示させたい
- ユーザーフォームにリストボックスをセットし、シート(商品一覧)のa2からy10までを表示させたい
- しかし、現在はcまでしか表示できない
- 解決策を教えてください
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
関連するQ&A
- エクセルVBAユーザーフォーム・リストボックスについて
エクセルVBAにてユーザーフォームを作りリストボックスにSheet1、AからEのデータすべてを 表示させることは出来るのですが、E行にデータがある物のみ表示する方法をご存じの方教えて頂けないでしょうか。 入力したソースは下記のとおりです。 Private Sub UserForm_Click() Dim lastRow As Long With Worksheets("Sheet1") lastRow = .Cells(Rows.Count, 5).End(xlUp).Row End With With ListBox1 .ColumnCount = 5 .ColumnWidths = "35;25;30;100;25" .RowSource = "Sheet1!A2:E" & lastRow .ColumnHeads = True End With End Sub
- ベストアンサー
- オフィス系ソフト
- Excel2010 VBA ユーザーフォーム
コンボボックスのリストに表示されているときはA列とB列が表示されているのに、 1つをクリックして選択した後はA列しか表示されません 選択した後もそのまま表示を維持したいのですが… ↓こんな感じでやりました Private Sub UserForm_Initialize() Dim lRow As Long With Worksheets("Sheet1") lRow = .Range("A" & Rows.Count).End(xlUp).Row End With With ComboBox1 .ColumnCount = 2 .ColumnWidths = "50" .RowSource = "Sheet1!A2:B" & lRow End With End Sub よろしくお願いします
- ベストアンサー
- オフィス系ソフト
- リストボックスの複数データをセルに転記する
よろしくお願いします。 複数表示させたリストの2番目のリストを抜いて 1、3、4、5番目のリストを、 シートAの、C6からF6に転記する With ListBox1 .ColumnCount = 5 .ColumnWidths = "150;0;150;0;0" ↑ .RowSource = "シートA!C6:F" & Worksheets("シートA").Cells(Rows.Count, 5).End(xlUp).Row End With
- ベストアンサー
- その他(プログラミング・開発)
- リストボックスに複数シートのデーターを表示させる。
リストボックスに複数シートのデーターを表示させる。 下記の構文で複数表示はできたのですが、このListBox1のColumnCount7つ目に シートBのC列のデーターを表示させる方法をお教えください。 With ListBox1 .ColumnCount = 7 ↓ .ColumnWidths = "0;100;120;0;0;0;120" .RowSource = "シートA!B5:G" & Worksheets("シートA").Cells(Rows.Count, 5).End(xlUp).Row → .RowSource = "シートB!C5:C" & Worksheets("シートB").Cells(Rows.Count, 5).End(xlUp).Row .MultiSelect = fmMultiSelectMulti .ListStyle = fmListStyleOption End With よろしくお願いします
- ベストアンサー
- Visual Basic
- リストボックスのプロパティを設定できません
excelのuserform上にリストボックスを作って表示させようとしているのですが、 ↓ここでエラー (1)ColumnWidths = "50:50" (ColumnWidths プロパティを設定できません。) (2) .RowSource = Worksheets("過去データ").Range("A" & lastRow & ": B" & lastRow).Address (RowSourceプロパティを設定できません。) ここでエラーになるのですが、何が違うのかわかりません。 ちなみに Worksheets("過去データ").Range("A" & lastRow & ": B" & lastRow).Select で選択させてみるとちゃんと選択しているのです。 今はAB列だけで試しているのですが、最終的には39列ありすべて表示させるつもりです。 listbox1(←番号)をクリックすると、クリックした値で、Worksheets("過去データ").にフィルターがかかり、 フィルタをかけた状態で、最終行を選択し、listbox2(←その番号に付随する詳細内容)に表示され、そしてlistbox1のチェックボックスにチェックの入ったものを、登録ボタンを押すと別のシートに貼り付ける、ということが最終的にはしたいのです。 1日中悩んでおりましたがわかりません。どなたか助けてください。 ------------------------------ Private Sub ListBox1_Click() Worksheets("過去データ").Cells(1, 1) = UserForm1.ListBox1.Text Unload UserForm1 Dim target As String target = Worksheets("過去データ").Range("A1").Value Worksheets("過去データ").Cells(1, 39).AutoFilter Field:=1, Criteria1:=target, Operator:=xlAnd Dim lastRow As Long With Worksheets("過去データ") lastRow = .Range("A" & Rows.Count).End(xlUp).Row MsgBox lastRow End With With ListBox2 .ColumnCount = 2 '.ColumnWidths = "50:50" '.RowSource = "過去データ!A" & lastRow & ": B" & lastRow.Address .RowSource = Worksheets("過去データ").Range("A" & lastRow & ": B" & lastRow).Address End With End Sub
- 締切済み
- Visual Basic
- リストボックスのリストを右詰で表示する
リストボックスのリストを右詰で表示する おはようございます。 先般、お教えいただいた複数列表示の構文ですが ColumnCountの5つ目の数値が左詰で表示されます。 これを右詰で表示したいのですが、構文がわかりません。 よろしくご教示をお願いします。 With ListBox2 .ColumnCount = 5 .ColumnWidths = "150;150;0;0;150" .RowSource = "受注物件!C5:G" & Worksheets("受注物件").Cells(Rows.Count, 5).End(xlUp).Row .MultiSelect = fmMultiSelectMulti .ListStyle = fmListStyleOption End With
- ベストアンサー
- Visual Basic
- ListBoxで表示されたデータの取得方法は
お世話になります。 標準フォーム から以下のリストボックスを表示して、無事シートの一覧が表示されています。 Private Sub UserForm_Initialize() Dim lastRow As Long Dim myData Worksheets("Sheet1").Range("a1:C35").Value = "" With Worksheets(Sheet) myData = .Range(.Cells(1, 1), .Cells(Rows.Count, 3).End(xlUp)).Value End With With ListBox1 .ColumnCount = 3 .ColumnWidths = "20;70;100" .List = myData End With End Sub このリストボックスにはボタンが二つありボタン1を押したときに標準フォームへ[hinban] という変数にリストボックスでフォーカスしているデータを取り込みたいのですが以下の方法でうまくいきません。 Private Sub CommandButton1_Click() Dim lastRow As Long Dim i As Integer hinban = ListBox1.Column(pvargColumn:=1) End Sub もう一つのボタンは何もせずにリストボックスを閉じたいのですがこれで問題ないですか。 Private Sub CommandButton2_Click() Unload Me End Sub プログラム初心者でインターネットから寄せ集めのプログラムです。 どなたかお力をお貸しください。
- ベストアンサー
- その他(プログラミング・開発)
- フォームのリストボックスに値を表示させたい
VBA フォームのリストボックスに値を表示させたい A1→aaa A2→bbb リストボックスに上記の値を表示させたいなら、 Private Sub UserForm_Initialize() UserForm1.ListBox1.RowSource = "Sheet1!A1:A2" End Sub で出来ますが、シート上のセルで表示する値を指定するのではなく、VBA上で、リストボックスに表示させる値を指定したいのです。 Private Sub UserForm_Initialize() UserForm1.ListBox1.RowSource = "aaa,bbb" End Sub を実行すると、VBA実行時エラー380になってしまいます。 UserForm1.ListBox1.RowSource = "aaa;bbb" もダメでした。 ご回答よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- Excel2016でのユーザーフォーム
Excel2016で入力規則リスト入力のドロップダウンリストを ユーザーフォームで実現しようとしています。 セル内容を中央に表示[A]して選択[B]される様にVBAを作りました。 時々1~5行上下して選択[B]されてしまうことがあります。 セル内容は中央に表示されているため[A]は問題なく機能しています。 デバッグ用にMsgBoxを挿入[C]すると問題なく選択されます。 何が原因なのかが分かりません、どうかご指導ください。 なお、ActiveCell.Value は必ず Sheet2!A2:A1222 内に存在します。 Private Sub UserForm_Activate() Dim n As Integer n = Range("Sheet2!A2:A1222").Find(what:=ActiveCell.Value, Lookat:=xlWhole).Row - 2 ListBox1.TopIndex = n - IIf(n >= 5, 5, 0) <----[A] ListBox1.ListIndex = n <----[B] 'MsgBox n <----[C] End Sub Private Sub ListBox1_DblClick(ByVal 中止 As MSForms.ReturnBoolean) ActiveCell.Value = ListBox1.Value Unload Me End Sub
- ベストアンサー
- Excel(エクセル)
- リストボックスのリストをシートのセル範囲で表示する
リストボックスのリストをシートのセル範囲で表示する おはようございます。 朝から行き詰っています。 リストは、シートのセル範囲で列の離れたリストを複数表示させる。 下のようにしたのですが、うまくできません。 よろしくアドバイスをお願いします。 With ListBox2 .ColumnCount = 3 .ColumnWidths = "150;150;150" .RowSource = "受注物件!C5:D,F5:F" & Worksheets("受注物件").Cells(Rows.Count, 5).End(xlUp).Row .MultiSelect = fmMultiSelectMulti .ListStyle = fmListStyleOption End With
- ベストアンサー
- Visual Basic
お礼
解決です。いつもありがとうございます。完成に一歩近づきました。