Sheet1に
A1 a
A2 i
A3 u
と入力されています。
フォームのリストボックスにこの3つのセルを表示したいのですが
Private Sub UserForm_Initialize()
UserForm1.ListBox1.ControlSource = Sheets("Sheet1").Range(Cells(1, 1), Cells(1, 3))
End Sub
ではうまく行きません。
デバッグしてもなにも引っかからないのですが
実行すると
「実行時エラー13
型が一致しません」
となります。
「ControlSource」を「RowSource」に変えても同じでした。
※列が移動するため列番号を変数で取得したいのでCellsを使用しています。
ご教授よろしくお願いします。
No.5ベストアンサー
- 回答日時:
回答4、onlyromです。
大事なことを言い忘れ。。
ROWSOURCEプロパティを使うときは、リストに使う値がアクティブシートにない場合は、シート名を付けないとエラーになります。
ということで改めて回答です。
R = 5
UserForm1.ListBox1.RowSource = "Sheet1!A1:A" & R
UserForm1.ListBox1.RowSource = "Sheet1!" & Range(Cells(1, 1), Cells(R, 1)).Address
UserForm1.ListBox1.List = Sheets("Sheet1").Range("A1:A" & R).Value
UserForm1.ListBox1.List = Sheets("Sheet1").Range(Cells(1, 1), Cells(R, 1)).Value
このどれかを使えますが、セルの値を使うときは、Listプロパティをお勧めします。
No.4
- 回答日時:
基本的な使い方が間違ってます。
RowSourceを使うなら、右辺は、セルのアドレスです
■UserForm1.ListBox1.RowSource = Sheets("Sheet1").Range(Cells(1, 1), Cells(3, 1)).Address
ただ、ふつうセル範囲をリストにしたいときは、Listプロパティを使います。
●UserForm1.ListBox1.List = Sheets("Sheet1").Range(Cells(1, 1), Cells(3, 1)).Value
それから、回答1で指摘されてるように、質問者のコードでは行番号列番号が違います。
No.3
- 回答日時:
セル番地の誤記訂正
UserForm1.ListBox1..RowSource = "Sheet1!A1:A3"
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) vbaのvlookup関数エラー原因を教えていただけないでしょうか。 3 2022/04/25 16:16
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Excel(エクセル) エクセルVBAでオブジェクトが必要です 2 2022/09/10 16:37
- Visual Basic(VBA) 最終列の右へSUM関数を作成するため下記コードを実行しましたが、最終列「10月28日」が上書きされて 3 2022/12/05 20:32
- Excel(エクセル) B列に文字がはいったらA列に数字が入るマクロードを完成させたい 4 2023/04/21 01:58
- Visual Basic(VBA) ExcelVBAのマクロについて。 9 2022/05/04 14:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SUMIF関数で、「ブランク以外を...
-
EXCELのcountif関数での大文字...
-
エクセル1行おきのセルを隣の...
-
自分の左隣のセル
-
文字列から英数字のみを抽出す...
-
EXCELでマイナス値の入ったセル...
-
条件付き書式の色付きセルのカ...
-
エクセル、○が連続する回数を数...
-
エクセルでエンターを押すと任...
-
excelで、空白を除いてデータを...
-
エクセルVBAでチェックボックス...
-
EXECL バーコード生成でBarCode...
-
Excelで日付が入っていたら金額...
-
ある列、或いは、ある行のセル...
-
エクセルで年月日から月日のみへ
-
EXCEL マクロで2つの作業を行い...
-
エクセルで、指定の値よりも大...
-
エクセルで空白で無いセルの数...
-
エクセルの使い方エクセルにつ...
-
エクセルVBA 行列の数を指定し...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SUMIF関数で、「ブランク以外を...
-
文字列から英数字のみを抽出す...
-
エクセル1行おきのセルを隣の...
-
自分の左隣のセル
-
エクセルで、指定の値よりも大...
-
excelで、空白を除いてデータを...
-
セルを結合した時のエクセル集...
-
エクセルで、A2のセルにA3...
-
エクセルで年月日から月日のみへ
-
エクセルに入力後、別シートの...
-
【Excel】4つとばしで合計する方法
-
Excelで大量のセルに一気に関数...
-
エクセルで特定のセル内にだけ...
-
EXCELのcountif関数での大文字...
-
EXCELでマイナス値の入ったセル...
-
条件付き書式の色付きセルのカ...
-
エラー「#REF」の箇所を置き換...
-
Excelで離れた位置のAVERAGEを...
-
同一セル内の重複文字を削除し...
-
週の労働時間を計算するエクセル
おすすめ情報