|
シートオブジェクトを、Worksheets("Sheet1")、Sheets("Sheet1")などと記述しますが、シート名を変更した場合に修正が必要となります。 Sub 日付を入力() Menu.Range("A1").Value = Date End Sub Sub Menu以外のシート保護を解除する() Dim Sh As Object For Each Sh In Sheets If Sh.CodeName = "Menu" Then Sh.Protect Else Sh.Unprotect End If Next End Sub すっきりとした記述になりました。また、ユーザーがシート名を変更してもエラーがなくなります。 |