2017-04-10 6 views
0

私はこのコードを試してみて、それが動作しない、別の1からExcelファイル内のセルの範囲を保護したい:excelファイルのセル範囲を別のもの(vbaコードを含む)から保護する方法はありますか?

ActiveWorkbook.Sheets("Rapport1").Select 
Range("O26,A:N,P:P,R:R,T:T").Select 
    Range("T1").Activate 
    ActiveWindow.SmallScroll ToRight:=3 
    Range("O26,A:N,P:P,R:R,T:T,V:V,X:X").Select 
    Range("X1").Activate 
    ActiveWindow.SmallScroll ToRight:=2 
    Range("O26,A:N,P:P,R:R,T:T,V:V,X:X,Z:Z,AB:AB").Select 
    Range("AB1").Activate 
    ActiveWindow.SmallScroll ToRight:=3 
    Range("O26,A:N,P:P,R:R,T:T,V:V,X:X,Z:Z,AB:AB,AD:AD").Select 
    Range("AD1").Activate 
    Selection.Locked = True 
    Selection.FormulaHidden = False 
    Sheets("Rapport1").Select 
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True 
+0

実際にどの範囲を保護していますか? – user3598756

答えて

0

以下は、細胞が"A:N,P:P,R:R,T:T,V:V,X:X,Z:Z,AB:AB,AD:AD"の範囲ロックし、変更を防ぐために、シートの保護を適用しますそれらの列に他のすべての列(列O、Q、Sなど)はロックされません。

With ActiveWorkbook.Sheets("Rapport1") 
    .Cells.Locked = False 
    With .Range("A:N,P:P,R:R,T:T,V:V,X:X,Z:Z,AB:AB,AD:AD") 
     .Locked = True 
     .FormulaHidden = False 
    End With 
    .Protect DrawingObjects:=True, Contents:=True, Scenarios:=True 
End With 
関連する問題