• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:リストボックスからシート選んで削除したい)

リストボックスからシート選んで削除する方法

このQ&Aのポイント
  • Excel2007でマクロ作成中の初心者です。リストボックスから選択されたシートを削除するためのマクロを実行しているのですが、最終行でコンパイルエラーが発生し、削除ができません。削除できる方法を教えてください。
  • Excel2007でマクロを作成している初心者です。リストボックスから選択されたシートを削除するためのマクロを実行していますが、実行時に「参照が不正または不完全です」というエラーメッセージが表示されて削除できません。削除方法を教えてください。
  • Excel2007でマクロを作成している初心者です。リストボックスから選択されたシートを削除するためのマクロを実行していますが、最終行でコンパイルエラーが発生し、「参照が不正または不完全です」と表示されてしまいます。どうすれば削除できるでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

だって.ListIndex があるのに With~End Withの外に出ちゃっているじゃないですか。。。 Worksheets(Split(.list(.ListIndex - 0), " ")(1)).Delete ' End With 'この位置にいれないと。。。 End Sub

aitaine
質問者

お礼

もう一度やりなおしましたら、できました。ありがとうございました。

aitaine
質問者

補足

申しわけございません。以下のマクロ実行で 「インデックスが有効範囲にありません」エラーがでます。 エラーが出ない用にしたいです。 Private Sub 顧客削除_Click() Dim i As Integer Dim btn Dim name As String With 顧客リスト For i = 0 To .ListCount - 1 If .Selected(i) Then name = .list(i) '選択されたリストを変数に格納 btn = MsgBox("本当に、" & name & "さんを削除していいですか?", _ vbYesNo + vbQuestion, "削除の確認をする") End If Next i ActiveWorkbook.Sheets(name).Delete 'Worksheets(Split(.list(.ListIndex - 0), " ")(1)).Delete ' End With If btn = vbNo Then Exit Sub End If End Sub

関連するQ&A

専門家に質問してみよう