A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
特定の名前を限定する方法の方こそ、質問課題ではないか?
だからピンとハズレだと思う。
場合によってはプログラムの中にシート名を書くことに適否見解は在ると思う。
やさしい例
Sheet1-Sheet6作っておいて実行してみて。
Sub test01()
sn = Array("Sheet6", "Sheet5")
MsgBox UBound(sn)
For Each sh In Worksheets
For i = 0 To UBound(sn)
If sh.Name = sn(i) Then
sh.Delete
Exit For
End If
Next i
Next
End Sub
ただ上記のような書き方はコード経済(少ないコード行数で済ます)にはなるが、実行では変わらない、むしろ時間がかかる(気にしないで良いが)かも。
No.2
- 回答日時:
Option Explicit
Private Sub CommandButton1_Click()
On Error Resume Next
Dim I As Integer
Dim N As Integer
Dim delSheets As String
delSheets = "Sheet5;Sheet6;Sheet7"
N = CharCount(delSheets, ";") + 1
Application.DisplayAlerts = False
For I = 1 To N
Worksheets(CutStr(delSheets, ";", I)).Delete
Next I
Application.DisplayAlerts = False
End Sub
1、消すリストを作成。
2、消すリスト数を取得
3、消すシート名を取得
Option Explicit
Public Function CutStr(ByVal Text As String, ByVal Separator As String, ByVal N As Integer) As String
Dim strDatas() As String
strDatas = Split("" & Separator & Text, Separator, , 0)
CutStr = strDatas(N * Abs(N <= UBound(strDatas)))
End Function
Public Function CharCount(ByVal Text As String, ByVal C As String) As Integer
CharCount = Len(Text) - Len(Replace(Text, C, ""))
End Function
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) シート削除のマクロで「deleteメソッドは失敗しました」となります。助けてください! Sub 不要 6 2022/09/08 16:41
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/03/02 08:40
- Excel(エクセル) ワードのマクロについて教えてください。 1 2023/03/11 13:50
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/12 10:10
- Visual Basic(VBA) Excelのマクロコードについて教えてください 1 2022/03/27 12:02
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/02/07 09:58
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/03/07 14:05
- Visual Basic(VBA) エクセルのマクロについて教えてください。 5 2023/06/02 08:44
- Visual Basic(VBA) 数字が「0」の列を削除するため、下記のコードを実行しましたが、コンパイルエラーSubまたはFunct 3 2022/12/04 00:00
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
別のシートから値を取得するとき
-
【ExcelVBA】全シートのセルの...
-
ユーザーフォームに入力したデ...
-
Excel チェックボックスにチェ...
-
エクセルのシート名変更で重複...
-
【Excel VBA】Worksheets().Act...
-
ExcelのVBAのマクロで他のシー...
-
ExcelVBA シート名を複数セルか...
-
VBA 存在しないシートを選...
-
【VBA】シート名に特定文字が入...
-
特定の文字を含むシートだけマ...
-
エクセルのマクロでアクティブ...
-
VBAで指定シート以外の選択
-
ExcelVBA:複数の特定のグラフ...
-
複数シートに色付きセル(条件つ...
-
【VBA】色のついたシート名を取得
-
エクセルVBA 同じ名前のシート...
-
ブック名、シート名を他のモジ...
-
VBA ユーザーフォーム上のチェ...
-
同じ作業を複数のシートに実行...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別のシートから値を取得するとき
-
ユーザーフォームに入力したデ...
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
同じ作業を複数のシートに実行...
-
ExcelVBA シート名を複数セルか...
-
【ExcelVBA】全シートのセルの...
-
Excel マクロについての相談
-
VBA 存在しないシートを選...
-
実行時エラー'1004': WorkSheet...
-
特定の文字を含むシートだけマ...
-
ExcelのVBAのマクロで他のシー...
-
ブック名、シート名を他のモジ...
-
XL:BeforeDoubleClickが動かない
-
VBA 複数の各シートに行を追加...
-
エクセルのシート名変更で重複...
-
【Excel VBA】Worksheets().Act...
-
シートが保護されている状態で...
-
Excel VBA 複数行を数の分だけ...
-
for 文の 繰り返し処理に使える...
おすすめ情報