nguyenkhamam
Thành viên mới
- Tham gia
- 12/7/11
- Bài viết
- 39
- Được thích
- 2
Mình thấy bình thường mà. Bạn thử thay đổi giá trị các ô D6, I8, J8, K8. Sau đó lưu file, đóng rồi mở ra lại xem có ổn không.Anh xem lại code xem có trục trặc chỗ nào không mà cái vùng màu đỏ em thay đổi tiêu đề A thành B rồi gõ pass:456 thì không được mà gõ 123 lại OK.
Sau đó đổi sang C hoặc A,B chẳng hạn thì vung đó lại không khóa! Em thấy như của thầy Viethoan là ngon cho vùng màu vàng nhưng vùng màu đỏ thì không thấy gì cả.
Anh xem lại cho em cột I,và cột J khi em thay đổi dữ liệu rồi lưu lại.Mình thấy bình thường mà. Bạn thử thay đổi giá trị các ô D6, I8, J8, K8. Sau đó lưu file, đóng rồi mở ra lại xem có ổn không.
Thầy ơi! sao mở 1 pass mà các pass kia cũng mở theo vậy thầy! nếu vậy thì hỏng hết bánh kẹo thầy ạ!Đã cập nhật lại file ở bài #12. Bạn tải lại file đi
Toàn bộ code trong bài #18 của mình có thể thay bằng đoạn sau cho gọn:Anh xem lại cho em cột I,và cột J khi em thay đổi dữ liệu rồi lưu lại.
File đây ạ!
Thầy ơi! sao mở 1 pass mà các pass kia cũng mở theo vậy thầy! nếu vậy thì hỏng hết bánh kẹo thầy ạ!
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Or Intersect(Target, Union([D6], [I8:K8])) Is Nothing Then Exit Sub
With ActiveSheet
.Unprotect "GPE"
.Protection.AllowEditRanges("Range1").ChangePassword IIf([D6] = "A", "123", IIf([D6] = "B", "456", IIf([D6] = "C", "789", "")))
.Protection.AllowEditRanges("Range2").ChangePassword IIf([I8] = "A", "123", IIf([I8] = "B", "456", IIf([I8] = "C", "789", "")))
.Protection.AllowEditRanges("Range3").ChangePassword IIf([J8] = "A", "123", IIf([J8] = "B", "456", IIf([J8] = "C", "789", "")))
.Protection.AllowEditRanges("Range4").ChangePassword IIf([K8] = "A", "123", IIf([K8] = "B", "456", IIf([K8] = "C", "789", "")))
.Protect "GPE"
End With
End Sub