
エクセルVBAで以下のような方法でコンボボックスのリストを更新しようとしています。
参照セルの値が変わった場合に、コンボボックスのリストを削除して、新たな値をリストとして取り込みたいと思って、以下のようなコードを実行しましたが、
削除はできても、リストの追加時に"書き込みできません"というエラーが出てしまいます。
下記ロジックにかかわらず、「コンボボックスのリストを一旦クリアして、再度追加する」方法をアドバイス願います。
For i = 1 To 10
ComboBox2.RemoveItem (0)
Next
For j = 1 To 10
ComboBox2.AddItem Worksheets("Tool").Cells(j, 2).Value
Next
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
Clear、AddItemなどしなくても、Bのコードを後出することで、AからBにきり変えられませんか。
VB的発想からエクセルVBA発想に切りかえる。一応テストではそのようになりました。Sub test01()
Worksheets("sheet1").ComboBox1.ListFillRange = "a1:a8" 'A
' Worksheets("sheet1").ComboBox1.ListFillRange = "b1:b5" 'B
End Sub

No.3
- 回答日時:
#2の方が書かれてますが、
ComboBox2.Clear
で削除できました。
追加はtonkatsuさんが書かれてるコードで追加できました。
この回答への補足
皆様、ご回答ありがとうございます。
.clearを使うと、リストだけで無く、コンボボックスのテキストまでも消されてしまうのですよね。
それだと、都合が悪くて、どうしたものかと悩んでます。
No.2
- 回答日時:
そのコードは、何処に記述しているのですか?
ユーザーフォームの名前を指定していないということは、同じフォームの何かの
イベントプロシージャに記述しているように思いますが、それでしたら、
そのコードで動作します。
ただ、削除するのは、こんな感じでいいかと思います。
Private Sub CommandButton1_Click()
Dim j As Integer
Me.ComboBox2.Clear
For j = 1 To 10
Me.ComboBox2.AddItem Worksheets("Tool").Cells(j, 2).Value
Next
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ユーザーフォームに2つのコンボボックス銀行名「ConboBox1」支店名を「ConboBox2」とし 4 2022/08/03 17:34
- Visual Basic(VBA) ExcelVBA ドロップボックスで月を選択するとそれ以降のデータが残るようにしたい。 3 2022/12/16 14:53
- Visual Basic(VBA) VBA ドロップダウンリストを残して値のみクリア 2 2022/10/27 05:42
- Visual Basic(VBA) ユーザーフォームの表示を追加したい 2 2023/03/26 23:18
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) ユーザーフォームの書き出しで追加のご相談 ユーザーフォームの値をシートに書き出す際、コードが表示され 2 2022/08/05 10:58
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- HTML・CSS VB.net コンボボックス 2 2022/06/30 20:37
- Visual Basic(VBA) 複数シートの複数列に入力されているデータを重複なしで抽出するVBAを作りたいです。 9 2022/06/17 10:33
- Access(アクセス) access フォーム 大分類、小分類 1 2022/08/11 18:03
このQ&Aを見た人はこんなQ&Aも見ています
-
入力した値をコンボボックスにすぐに反映させる方法
Excel(エクセル)
-
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
VBAコンボボックスの内容が反映されない
その他(プログラミング・Web制作)
-
-
4
UserForm1.Showでエラーになります。
工学
-
5
コンボボックスの自動更新について
Excel(エクセル)
-
6
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
7
VBAでユーザーフォームを再表示させたい。
Excel(エクセル)
-
8
コンボボックス内の文字サイズ変更
Excel(エクセル)
-
9
コンボボックスの開いたリストを閉じるには
Access(アクセス)
-
10
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
11
コンボボックスにリストが表示されません・・・
Excel(エクセル)
-
12
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
13
VBA エンターキーでイベントに入りたい。
PowerPoint(パワーポイント)
-
14
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
15
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
16
エクセルVBAでマルチページの切り替え方法の件で
Excel(エクセル)
-
17
エクセルVBA テキストボックスに3桁ごとにコンマ
Visual Basic(VBA)
-
18
ExcelVBAでテキストボックスの表示形式を小数点第二位まで表示する方法
Visual Basic(VBA)
-
19
エクセルVBAでUserFormを起動した時
Excel(エクセル)
-
20
ユーザーフォームに入力したデータを保持する方法
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
首吊りどこ締めるの
-
尿検査前日に自慰行為した時の...
-
彼女のことが好きすぎて彼女の...
-
EXCELで条件付き書式で空白セル...
-
至急!尿検査前日にオナニーし...
-
リンク先のファイルを開かなく...
-
風俗店へ行く前のご飯
-
尿検査の前日は自慰控えたほう...
-
エクセルで空白セルを含む列の...
-
VLOOKUP関数を使用時、検索する...
-
値が入っているときだけ計算結...
-
2つの数値のうち、数値が小さい...
-
イタリアから帰国する際、肉製...
-
Excel 数値の前の「 ' 」を一括...
-
検便についてです。 便は取れた...
-
小数点以下を繰り上げたものを...
-
MIN関数で空白セルを無視したい...
-
【Excelで「正弦波」のグラフを...
-
腕を見たら黄色くなってる部分...
-
EXCELで式からグラフを描くには?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
首吊りどこ締めるの
-
尿検査前日に自慰行為した時の...
-
至急!尿検査前日にオナニーし...
-
検便についてです。 便は取れた...
-
彼女のことが好きすぎて彼女の...
-
値が入っているときだけ計算結...
-
リンク先のファイルを開かなく...
-
EXCELで条件付き書式で空白セル...
-
2つの数値のうち、数値が小さい...
-
VLOOKUP関数を使用時、検索する...
-
尿検査の前日は自慰控えたほう...
-
MIN関数で空白セルを無視したい...
-
小数点以下を繰り上げたものを...
-
風俗店へ行く前のご飯
-
エクセルで空白セルを含む列の...
-
Excel 数値の前の「 ' 」を一括...
-
【Excelで「正弦波」のグラフを...
-
納豆食べた後の尿の納豆臭は何故?
-
EXCELで式からグラフを描くには?
-
ある範囲のセルから任意の値を...
おすすめ情報