ご覧いただきありがとうございます。
Excelで下記のようなマクロを書いたのですが、思ったような処理をしてくれません。色々なWebページや参考書に当たってみましたが、どうしてもわかりません。どの点が間違っているのか、どう直したらよいか、ご教示いただけませんでしょうか。
なお、意図している処理は次のようなものです。
・セルB2:B21のデータをリストボックスに表示(この部分は別途作成済みです)
・リストボックスに表示されている項目をユーザーが複数選択する
・選択後コマンドボタン2をクリックすると、選択された項目を含む行を削除する
以上ですが、選択した項目のうち最初のものだけを削除しただけで終了しています。お手数をおかけいたしますが、よろしくお願いいたします。
Private Sub CommandButton2_Click()
Application.ScreenUpdating = False
Dim I As Integer
If ListBox1.ListIndex = -1 Then
MsgBox "選択されていません"
Exit Sub
End If
Dim myStr(19) As Variant
Dim myCell(19) As Variant
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
myStr(i) = .List(i)
Set myCell(i) = Workbooks("PERSONAL.XLS").Sheets(1).Range("B2:B21").Find(myStr(I), , xlValues, xlWhole)
ThisWorkbook.Activate
myCell(i).EntireRow.Delete
End If
Next i
End With
Unload Me
Application.ScreenUpdating = True
End Sub
No.1
- 回答日時:
For i = 0 To .ListCount - 1
ListCountは1オリジン(1から始まる。0は項目がない状態)だったと思うのですが…
For i = 1 To .ListCount
にしたらどうなりますか?
この回答への補足
はじめまして。早速のご回答ありがとうございます。
For i = 1 To .ListCount
にしてみたところ、例えばリストの上から1・3・5番目を選んでコマンドボタンをクリックすると、3番目に対応する行が削除され、2・4・6番目を選ぶと、2番目に対応する行が削除されるというように、2番目以降の最初の項目を含む行が削除されるようになりました。よろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Visual Basic(VBA) VBAが止まります。 3 2022/08/31 14:09
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ファイルのアクセス回数について
-
エクセルのプロパティーでセキ...
-
Wordで差込印刷した後に別々の...
-
サブフォルダから部分一致のエ...
-
エクセルファイル名に更新日時...
-
ExcelブックをGoogleスプレッド...
-
PowerPoint 2002でファイル名を...
-
Excel csv保存 列数が異なる場...
-
Word2010で閉じるボタン押下後...
-
エクセル UserForm 呼び出しで...
-
実行時エラー52
-
マクロ実行後、表示がおかしくなる
-
Excelのマクロについて教えてく...
-
バッチファイル 二つ上のディ...
-
エクセルvbaでdocuworksprinter...
-
【VBA】テキストファイルを指定...
-
Windows10でコマンドプロンプト...
-
エクセルで複数のコメントのサ...
-
カンマ区切りのCSVファイルから...
-
Excelのマクロについて教えてく...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイルのアクセス回数について
-
エクセルのプロパティーでセキ...
-
Wordで差込印刷した後に別々の...
-
ExcelブックをGoogleスプレッド...
-
Excel csv保存 列数が異なる場...
-
エクセル UserForm 呼び出しで...
-
サブフォルダから部分一致のエ...
-
エクセルファイル名に更新日時...
-
PowerPoint 2002でファイル名を...
-
EXCEL 検索時の設定
-
エクセルでcsvファイルを開いて...
-
マクロ実行後、表示がおかしくなる
-
複数のexcelのファイルを一括で...
-
実行時エラー52
-
【Excel VBA】ファイルを保存し...
-
VBAでマクロを使って、マクロ無...
-
vbaでボタンをクリックして上書...
-
大量のCSVファイルをExcel形式...
-
For~Nextルーチンで最初の1回...
-
Word2010で閉じるボタン押下後...
おすすめ情報