電子書籍の厳選無料作品が豊富!

マクロでシートを追加し、シートの名前を変更したくて記録したところ、以下のコードになりました。

しかしながら、2度目に実行すると、sheet2が追加されsheet1が無いためエラーとなります。

2度目に実行してもsheet2のシート名を変更できるようにするには、どうすればよいですか?


Sheets.Add
Sheets("Sheet1").Select
Sheets("Sheet1").Name = "処理結果"

A 回答 (3件)

Sheet2も"処理結果"という同じ名前にしてしまうと結局エラーになってしまうのでSheet2以降もシート名を変更します。

例えば時刻をつけるとすると、
Worksheets.Add(after:=Worksheets(Worksheets.Count)) _
.Name = "処理結果" & Format(Now(), "h時mm分ss秒")
で名前を付けたシートを追加できます。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
うまく行きました。

お礼日時:2004/09/23 21:32

1行で済みます。

aaaXと言う名の3シート増やす例です。ご参考に。
Sub test04()
For i = 1 To 3
Sheets.Add.Name = "aaa" & i
Next i
End Sub
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

お礼日時:2004/09/23 21:33

同じブック内でシート名は同じ名前を付けられないので、2度実行したら変わりません。



Sub aa()
Dim ws As Worksheet
 On Error Resume Next
 Set ws = Worksheets.Add _
   (after:=Worksheets(Worksheets.Count))
 ws.Name = "処理結果"
 '↓おまけ
 ws.Range("A1").Value = "処理結果シート作成に成功"
 ws.Range("C20").Activate
 '↑おまけ
End Sub
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
もちろんOKでした。

お礼日時:2004/09/23 21:32

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