Hỏi cách khoá Cell Có Data Validation (Drop list) - Không cho xoá nhưng vẫn được chọn

Liên hệ QC

chim_zunzun

Thành viên mới
Tham gia
1/10/10
Bài viết
11
Được thích
8
Chào các ACE,
Như tiêu đề, ở ô E1, E2. Mình đã tạo 1 Droplist. Mục đích muốn Khoá Sheet này lại (bằng Protect Sheet) để chống xoá 2 ô này, nhưng vẫn có thể chon để thay đổi các giá trị trong List.
Mong các ACE giúp đỡ
Xin cảm ơn.
 

File đính kèm

  • Mau BCTC TT200.xlsx
    28.6 KB · Đọc: 20
Chào các ACE,
Như tiêu đề, ở ô E1, E2. Mình đã tạo 1 Droplist. Mục đích muốn Khoá Sheet này lại (bằng Protect Sheet) để chống xoá 2 ô này, nhưng vẫn có thể chon để thay đổi các giá trị trong List.
Mong các ACE giúp đỡ
Xin cảm ơn.
Bạn trình tự thao tác như sau :
Bước 1 : Bỏ dấu kiểm Locked của ô E1, E2
Bước 2 : Chọn Protect Sheet ==> Đánh dấu kiểm từ mục 1 đến mục 5; Sau đó kéo thanh cuốn xuống dưới đánh dấu vào mục Use AutoFilter
Bước 3 : Đặt Pass theo y muốn ==> Nhấn OK
Xong phim
 
Mình có 1 cách nhưng chỉ áp dụng được cho 1 vị trí thôi (E1 hoặc E2) đó là: chọn vị trí ô E1 (cái này quan trọng để hiện ra dấu mũi tên của Droplist) > sau đó click Protect > bỏ hết các mục chọn bên trong (do toàn bộ vùng trên sheet Mau_2021 bạn đã bỏ Locked cho Cell rồi nên khi đã Protect như cách này thì chỉ còn click được vào mũi tên của Droplist thôi.
Ngoài ra nếu dùng code VBA thì có thể đặt sự kiện khi ô E1 hoặc E2 ="" thì sẽ gán giá trị bất kỳ vào tại ô , khi đó chức năng Error Alert của Data Validation sẽ kích hoạt ngăn lại.
 
Lần chỉnh sửa cuối:
Tôi đề nghị không protect gì cả.
Phải chuột trên tên sheet "Mau_2021" ở sheet tabs (ở cạnh dưới của cửa sổ) -> view code -> dán code sau -> lưu lại tập tin.
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$E$1:$F$1" Or Target.Address = "$E$2:$F$2" Then
        If IsEmpty(Target(1).Value) Then
            Application.EnableEvents = False
            Application.Undo
            Application.EnableEvents = True
        End If
    End If
End Sub
 
Web KT
Back
Top Bottom