- Tham gia
- 22/7/14
- Bài viết
- 355
- Được thích
- 31
Tôi có sử dụng đoạn Code này dùng để Unprotect và Protect nhiều sheet trong cùng 1 lúc. Nhưng khổ nổi code này không giử được định dạng ban đầu, nghĩa là khi tôi Protect sheet tôi chọn vào 2 chổ : Format colum và Format row để vẫn hoạt động được khi sheet bị khóa. sau đó tôi protect cùng 1 lúc 100 sheet bằng Code thì ok, sau đó tôi Unprotect 100 sheet cũng ok luôn, tiếp đến lần thứ 2 tôi Protect sheet bằng Code lần nữa thì Excel lại Reset định dạng mất đi 2 cái Format colum và Format row.vậy làm sao để giữ được định dạng , mong các anh em giúp đở
Public Sub Protect_Sheets()
On Error Resume Next
Dim strPass As String
Dim sht_name As Worksheet
strPass = InputBox("Enter your Password")
For Each sht_name In Worksheets
If Not sht_name.ProtectContents Then
sht_name.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:=strPass
End If
Next sht_name
End Sub
'
Public Sub UnProtect_Sheets()
On Error Resume Next
Dim strPass As String
Dim sht_name As Worksheet
strPass = InputBox("Enter your Password")
For Each sht_name In Worksheets
sht_name.Unprotect strPass
Next sht_name
End Sub
Public Sub Protect_Sheets()
On Error Resume Next
Dim strPass As String
Dim sht_name As Worksheet
strPass = InputBox("Enter your Password")
For Each sht_name In Worksheets
If Not sht_name.ProtectContents Then
sht_name.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:=strPass
End If
Next sht_name
End Sub
'
Public Sub UnProtect_Sheets()
On Error Resume Next
Dim strPass As String
Dim sht_name As Worksheet
strPass = InputBox("Enter your Password")
For Each sht_name In Worksheets
sht_name.Unprotect strPass
Next sht_name
End Sub

