プロが教えるわが家の防犯対策術!

VBA超ビギナーです。
ネットで調べて、「すべてのシート名を日付に変更する」まではできたのですが、「特定のシート(シート名「シート名変更」)を除外してシート名を変更する」にするにはどこをどう変更すればいいのかわかりません。
以下は現在組んでいるコードです。
どのように変更すればよいでしょうか?

Sub シート名一括で変える()
Dim Ws As Worksheet
Dim D As Date

'最初の日付
D = Range("D3").Value

'全シートをループ
For Each Ws In Worksheets

'シート名を変更する
Ws.Name = Format(D, "m.d(aaa)")

'日数にプラス1をする
D = D + 1

Next Ws

End Sub

A 回答 (2件)

←←←追加と書いて有る2行を追加するだけ。




'全シートをループ
For Each Ws In Worksheets

'シート名を変更する

IF Ws.Name <> "シート名変更" Then ←←←追加

Ws.Name = Format(D, "m.d(aaa)")

'日数にプラス1をする
D = D + 1

EndIf ←←←追加

Next Ws
    • good
    • 0
この回答へのお礼

無事解決しました!
詳しく書いてくださってありがとうございます!
とても助かりました!

お礼日時:2024/02/14 18:36

'シート名を変更する


If Ws.Name <> "シート名変更" Then
Ws.Name = Format(D, "m.d(aaa)")
'日数にプラス1をする※この処理も除外したければここに入れる。
D = D + 1
End If
のように「シート名が"シート名変更"でなければ」という条件を付ければいいのですよ。
参考に!
If~End Ifによる条件分岐について
https://officevba.info/ifendif/
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A