[[20190802113136]] 『VBAでのシートの名前変更』(VBABAA) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『VBAでのシートの名前変更』(VBABAA)

sheet1を情報の入力シートとして
sheet2を様式を整えたものを作成しています。

マクロを使ったら、sheet2をコピー、作成されたsheet2(2)にsheet1の情報をに入れて、sheet2(2)のシート名をsheet1のA1セルに書かれた文字列に変更をしたいです。
が、どうにもシート名を変更するところでエラーが出てしまいますが理由が分かりません。
どこに問題があるのでしょうか。

コード
worksheets("sheet2").copy before:=worksheets("sheet2")
activesheet.name=worksheets("sheet1").range("A1")
(sheet1からsheet2(2)へ情報を移すコードは省略しています。)

< 使用 Excel:Excel2010、使用 OS:Windows10 >


書き漏れです。
エラーメッセージは
1004
アプリケーション定義またはオブジェクト定義のエラーです。
です。
(VBABAA) 2019/08/02(金) 11:56

 A1セルの文字列はシート名として有効なものだろうか?
(ねむねむ) 2019/08/02(金) 12:00

書いている間に話が進んでましたが、投稿しておきます。

>どうにもシート名を変更するところでエラーが出てしまいます
どのようなエラーでしょうか?
エラー番号(と出来ればメッセージも)提示いただくとアドバイスできることがあるかもしれません。

また、個人的にはActive○○の操作が好きではないので別案。
(ラベルを使ったのでややこしくなっちゃいましたが、興味があればステップ実行して研究してみてください。)

    Sub さんぷる()

        Worksheets("sheet2").Copy before:=Worksheets("sheet2")

        With Worksheets("sheet2").Previous
            On Error GoTo エラートラップ
            .Name = Worksheets("sheet1").Range("A1").Value
            On Error GoTo 0
            'なんやかんやの処理

        Exit Sub

    エラートラップ:
        Select Case Err.Number
            Case 9
                MsgBox "【sheet1】シートが見つかりません" & vbCrLf & "【" & .Name & "】のシート名を変更出来ませんでした"

            Case 1004
                MsgBox _
                    "シート名を【" & Worksheets("sheet1").Range("A1").Value & "】に変更できません" & vbCrLf & _
                    " ・既に別のシート名に使われていないこと" & vbCrLf & _
                    " ・ブランクでないこと" & vbCrLf & _
                    " ・シート名として使用できない文字が含まれていないこと" & vbCrLf & _
                    " ・31文字を超えていないこと" & vbCrLf & _
                    "を確認して、手動で修正してください。"

            Case Else
                MsgBox "原因不明のエラーが発生しました" & vbCrLf & .Name & "のシート名を変更出来ませんでした"
        End Select

        Err.Clear
        Resume Next

    End With

    End Sub

(もこな2) 2019/08/02(金) 12:43


お早い返信ありがとうございました。

もこな2さんの書いてくださったコードを見ていて原因が分かりました。
試しに打っていた文字列が、すでに別のシートに使われていたのです・・・。

うっかりしていました。
また、勉強になりました。お二方、ありがとうございました。
(VBABAA) 2019/08/02(金) 13:52


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.