- 締切済み
エクセルVBA 追加したシート名をハイフン(-)を入れて連番にする方法
エクセル2003です。 シートをコピーし追加、 一つ前のシートの一部セルをセル参照するコードを作成しました。 今の段階ではコピーしたシート名が請求書1、請求書2、請求書3・・・となるのですが シート名を請求書1-1、請求書1-2、請求書1-3・・・とすることは可能でしょうか? "請求書"を"請求書1-"にするとコピーしたシートのセル参照をした部分が うまく参照されずエラーになってしまいます。 シート名にハイフンを入れてもエラーが出ない方法をご存じの方いらっしゃいましたら 是非ご教授をお願い致します。 Sub test1() Dim i As Integer Worksheets(2).Select For i = 2 To 5 Worksheets(2).Copy after:=ActiveSheet ActiveSheet.Name = "請求書" & i With Worksheets("請求書" & i) .Range("H15").Formula = "=請求書" & i - 1 & "!F10" End With Next i End Sub
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- kybo
- ベストアンサー率53% (349/647)
"='請求書1-" & i - 1 & "'!F10" のように、「シート名」の前と「!」の前に「'」を入れます。 Sub test1() Dim i As Integer Worksheets(2).Select For i = 2 To 5 Worksheets(2).Copy after:=ActiveSheet ActiveSheet.Name = "請求書1-" & i With Worksheets("請求書1-" & i) .Range("H15").Formula = "='請求書1-" & i - 1 & "'!F10" End With Next i End Sub