Giúp em về Data Validation động

  • Thread starter Thread starter liro
  • Ngày gửi Ngày gửi
Liên hệ QC

liro

Thành viên chính thức
Tham gia
25/7/09
Bài viết
72
Được thích
13
Đây là đoạn code trong sách Lập trình nói về việc sử dụng Validation động. Mong mọi người giải thích dùm em đoạn lập trình cho phương thức Validation.
PHP:
Sub Validation_dong()
Dim Listrange As Range, ListAddress As String
'xac dinh vung chua du lieu
Set Listrange = Range(Range("b2"), Range("b2").End(xlDown))
'Xac dinh dia chi cua vung danh sach
ListAddress = Listrange.Address
With Range("b2").Validation
    .Delete
    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="=" & ListAddress
     .IgnoreBlank = True
     .InCellDropdown = True
     .ShowInput = True
     .ShowError = True
End With
Set Listrange = Nothing
Range("d2").Select
End Sub
</b>
 
Đây là đoạn code trong sách Lập trình nói về việc sử dụng Validation động. Mong mọi người giải thích dùm em đoạn lập trình cho phương thức Validation.
PHP:
Sub Validation_dong()
Dim Listrange As Range, ListAddress As String
'xac dinh vung chua du lieu
Set Listrange = Range(Range("b2"), Range("b2").End(xlDown))
'Xac dinh dia chi cua vung danh sach
ListAddress = Listrange.Address
With Range("b2").Validation
    .Delete
    .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="=" & ListAddress
     .IgnoreBlank = True
     .InCellDropdown = True
     .ShowInput = True
     .ShowError = True
End With
Set Listrange = Nothing
Range("d2").Select
End Sub
</b>
Cái này đâu có gì ghê gớm đâu bạn!
Toàn bộ code có thể xây dựng được từ record macro
Chỉ lưu ý 1 điểm: Set Listrange = Range(Range("b2"), Range("b2").End(xlDown)) ---> Mục địch để khi gõ thêm gì đó trong cột B thì Listrange sẽ được set lại và Validation tại B2 sẽ được cập nhật mới
Có điều code này lý ra nên cho vào sự kiện Change thì hay hơn!
 
Upvote 0
Vấn đề em chưa tìm được tài liệu nói về phương thức Validation nên không hiểu được đoạn code trên. Anh có thể giải thích chi tiết hơn hộ em hay cho em xin tài liệu nói về phương thức này được ko .
 
Upvote 0
Vấn đề em chưa tìm được tài liệu nói về phương thức Validation nên không hiểu được đoạn code trên. Anh có thể giải thích chi tiết hơn hộ em hay cho em xin tài liệu nói về phương thức này được ko .
Để hiểu nó, không gì bằng... TỰ LÀM
Bạn cứ record macro quá trình tạo 1 Validation list cho 1 cell nào đó, xong, tắt record macro rồi Alt + F11 vào xem code là... BIẾT NGAY!
 
Upvote 0
Lỗi khi đọc dữ liệu vào Validation.

Cái này đâu có gì ghê gớm đâu bạn!
Toàn bộ code có thể xây dựng được từ record macro
Chỉ lưu ý 1 điểm: Set Listrange = Range(Range("b2"), Range("b2").End(xlDown)) ---> Mục địch để khi gõ thêm gì đó trong cột B thì Listrange sẽ được set lại và Validation tại B2 sẽ được cập nhật mới
Có điều code này lý ra nên cho vào sự kiện Change thì hay hơn!

Chào bạn. Tôi gặp lỗi khi thử dùng phương thức Validation. Đã nghiên cứu rất lâu nhưng không tìm ra giải đáp.

Thử đoạn code của bạn cũng có lỗi tương tự như sau.
 

File đính kèm

  • Picture1.jpg
    Picture1.jpg
    20.3 KB · Đọc: 29
  • Picture1.jpg
    Picture1.jpg
    19.6 KB · Đọc: 20
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom