[[20211127112050]] 『シート名を変更するとマクロが実行されない』(まるこ) >>BOT

[ 初めての方へ | 一覧(最新更新順) |

| 全文検索 | 過去ログ ]

 

『シート名を変更するとマクロが実行されない』(まるこ)

こちらで、アクティブセルに「A」と入力するとアクティブセルの右隣のセルに、sheet2"A1:B5"がコピー貼り付けされるVBAを教えていただいたのですが、
Sheet2の名前を「A,B」と変更するとマクロが実行できなくなってしまいました。「インデックスが有効範囲にありません」と表示されてしまいます。
解決策をお願い致します。

Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Cells(1, 1).Value <> "A" Then Exit Sub
    Application.EnableEvents = False
    Worksheets("Sheet2").Range("A1:B5").Copy Target.Cells(1, 1).Offset(, 1)
    Application.EnableEvents = True
 End Sub

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


>Sheet2の名前を「A,B」と変更すると
↓に注目しましょう。
 Worksheets("Sheet2")〜〜
            ~~~~~~~~

(もこな2) 2021/11/27(土) 11:54


 >Sheet2の名前を「A,B」と変更するとマクロが実行できなくなってしまいました。

 シート名を変えたのだから
 Worksheets("Sheet2").Range("A1:B5").Copy Target.Cells(1, 1).Offset(, 1)
     ↓
 Worksheets("A,B").Range("A1:B5").Copy Target.Cells(1, 1).Offset(, 1)
 と訂正する必要がありますね

 それと最初のエラーでイベントが発生しなくなっていますので

 Sub 復帰()
     Application.EnableEvents = True
 End Sub

 を標準モジュールで一度実行する必要があります。

 もしくは、イミディエイトウインドウを表示して
 Application.EnableEvents = True と打ち込んで[Enter]して下さい。

(ピンク) 2021/11/27(土) 17:24


コメント返信:

[ 一覧(最新更新順) ]


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