ray88’s diary

お仕事で困ったとき用の自分用の覚書

ExcelVBA シートの保護と編集可能セル範囲の設定(セルごとの保護)

Sub 編集可能領域の設定()
    Worksheets("Sheet1").Protection.AllowEditRanges.Add _
    Title:="許可範囲1", _
    Range:=Range("A4:G4"), Password:="editOK"
End Sub
Sub ワークシートに保護を設定()
    Worksheets("Sheet1").Protect _
    Password:="AllowEdit"
End Sub
Sub 対象セル範囲ごとに保護を設定()
    With Worksheets("Sheet1").Protection.AllowEditRanges
    .Add _
    Title:="許可範囲1", _
    Range:=Range("A4"), Password:="editOKA"
    .Add _
    Title:="許可範囲2", _
    Range:=Range("A5"), Password:="editOKB"
    .Add _
    Title:="許可範囲3", _
    Range:=Range("A6"), Password:="editOKC"
    
    'シートの保護
    Worksheets("Sheet1").Protect _
    Password:="AllowEdit"
    End With
End Sub

f:id:ray88:20201125210153p:plain