- 締切済み
シートの名前を一括変更
シートの名前の変更(一括) 例えば、4月・5月・6月と1年分を簡単に変更する方法を教えてください
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 >シートの名前の変更(一括) ご質問の場合は、シート名を付けるというなら、一般のマクロでも出来ますが、シート名の変更ですと、状況によって、マクロでないとかなり面倒な作業になるかもしれません。以下はマクロでは一括して行えますが、手作業だと、場合によっては倍の作業をしなくてはなりませんから、場合によって、24シート(たぶん)を変更しなければならないはずです。 以下の場合は、エラーが出るたびに、名前を一旦別名に変更して、シート順に、名称を変更し続けています。 Sub SheetNames() Dim i As Integer Dim newShName As String Const START_MONTH As Integer = 4 '最初の月は? '入力月とシート数のチェック If START_MONTH > 12 Or START_MONTH < 1 Then Exit Sub If Worksheets.Count < 12 Then Worksheets.Add After:=Worksheets(Worksheets.Count), Count:=(12 - Worksheets.Count) End If On Error GoTo ErrHandler For i = 1 To 12 newShName = (START_MONTH + i - 2) Mod 12 + 1 & "月" Worksheets(i).Name = newShName Next i Exit Sub ErrHandler: Worksheets(newShName).Name = "Temp" & CStr(i) Resume End Sub
- picklse
- ベストアンサー率65% (26/40)
VBAを使うとできます。 ○Sheet1~Sheet12を1月~12月にする Sub Sample1() Dim i As Integer For i = 1 To 12 Worksheets("Sheet" & i).Name = i & "月" Next i End Sub ○Sheet1~Sheet12を4月~3月にする Sub Sample2() Dim i As Integer For i = 1 To 12 Worksheets("Sheet" & i).Name = i + 3 + 12 * (i > 9) & "月" Next i End Sub
- Cupper
- ベストアンサー率32% (2123/6444)
標準ではそのような機能は無かったと思います。 マクロで可能な気もしますが、マクロは詳しくないので定かではありません。 と、言うか・・・マクロを書いているあいだに名前の変更を終えられるような気がしますので ひとつずつ書き換えることをお奨めします。たかだかシート12個ですしね。