2013-05-02 2 views
1

보호 기능이 설정된 여러 워크 시트에서 그룹화/개요 작성을 허용하려고합니다. 통합 문서를 열 때 내가 자동 실행 매크로로 설정Excel : 보호 기능이있는 여러 워크 시트에서 그룹화/개요 허용

Sub group() 
ActiveSheet.EnableOutlining = True' 
ActiveSheet.Protect Contents:=True, UserInterfaceOnly:=True 
End Sub 

: 몇 가지 이유를 들어 엑셀 그래서 나는이 매크로 코드를 사용하고 protecting- 때이 작업을 수행 할 수있는 간단한 옵션 상자가 없습니다 . 내가 가지고있는 문제는 활성 시트뿐만 아니라 모든 시트에 적용되기를 원한다는 것입니다. 코드는 활성 시트에서 작동하지만 여전히 다른 시트에서 수동으로 매크로를 실행하여 개요가 작동하도록해야합니다.

가끔 워크 시트가 추가되거나 삭제되는 유연성이 필요합니다. 따라서 코드가 모든 워크 시트의 이름을 코드의 이름으로 지정하지 않아도 항상 모든 워크 시트에 영향을 미치도록 코드를 유연하게 만들고 싶습니다.

이것이 가능합니까?

감사합니다.

답변

0

나는 이것이 당신이 원하는 생각 :

Option Explicit 
Sub group() 
    Dim ws As Worksheet 
    For Each ws In ThisWorkbook.Worksheets 
    With ws 
     .EnableOutlining = True ' 
     .Protect Contents:=True, UserInterfaceOnly:=True 
    End With 
End Sub 
2

(가) 있어야합니다 수 :

Option Explicit 
Sub group() 
Dim ws As Worksheet 

For Each ws In ThisWorkbook.Worksheets 
    With ws 
     .Protect Contents:=True, UserInterfaceOnly:=True 
     .EnableOutlining = True 'add after adding protection to the sheet 
    End With 
Next ws 'you need the next rule for the "For" routine. 
End Sub 

인사말 폴

관련 문제