bạn xem file xem đúng ý ko nhaTrong trường hợp này em muốn tạo một List Data Validation cho cột Người Mua của sheet THONG KE để liệt kê tên ngườimua ứng với Tên mặt hàng và Tình trạng trong sheet List
Em xin cám ơn!
Cám ơn bạn, nhưng ý của mình là mình muốn tạo List xổ xuống trong cột Người Mua để khi mình chọn Tình Trạng thì nó sẽ tham chiếu theo bảng bên sheet Lists đó bạnbạn xem file xem đúng ý ko nha
chắc phải dùng Vlookup thôi để mình xem lại cú pháp xem sao nếu được mình làm choCám ơn bạn, nhưng ý của mình là mình muốn tạo List xổ xuống trong cột Người Mua để khi mình chọn Tình Trạng thì nó sẽ tham chiếu theo bảng bên sheet Lists đó bạn
Mình có thử sử dụng hàm Offset để tạo List nhưng nó chỉ tham chiếu 1 dòng trong khi Tình Trạng và Tên Mặt Hàng của mình lại không liên tục đó bạnchắc phải dùng Vlookup thôi để mình xem lại cú pháp xem sao nếu được mình làm cho
lâu ngày quá quên luôn cú pháp Vlookup rồi
khà khà
Mình có thử sử dụng hàm Offset để tạo List nhưng nó chỉ tham chiếu 1 dòng trong khi Tình Trạng và Tên Mặt Hàng của mình lại không liên tục đó bạn
Cái này thì phải dùng VBA thôiMình có thử sử dụng hàm Offset để tạo List nhưng nó chỉ tham chiếu 1 dòng trong khi Tình Trạng và Tên Mặt Hàng của mình lại không liên tục đó bạn
Cái này thì phải dùng VBA thôi
Bạn tham khảo theo file đính kèm cách dùng validation hoặc combobox kết hợp VBA
tôi nghĩ nếu bạn xài worksheet change
khi di chuyển code cứ nạp rồi xả cho combo liên tục vậy, khi dữ liệu lớn nó có chạy nổi ko?
Mình có tham khảo Code của GPE sửa lại một tí. cách dùng Dic .add Data Validation hay hay không biết có ích gì ko cũng xin úp lên góp vui cùng các bạntôi nghĩ nếu bạn xài worksheet change
khi di chuyển code cứ nạp rồi xả cho combo liên tục vậy, khi dữ liệu lớn nó có chạy nổi ko?
Sub validate_list()
Dim dl(), i As Long
dl = Sheet2.Range(Sheet2.[C2], Sheet2.[C65536].End(3)).Value
With CreateObject("scripting.dictionary")
For i = 1 To UBound(dl)
If dl(i, 1) <> "" Then
If Not .exists(dl(i, 1)) Then .Add dl(i, 1), ""
End If
Next
Sheet1.[F5:F1000].Validation.Delete
Sheet1.[F5:F1000].Validation.Add 3, , , Join(.keys, ",")
End With
End Sub
Dù sao là một phương pháp để chủ Topic tham khảo, vì dữ liệu bạn ấy đưa ra cũng là dữ liệu tham khảo, còn nếu dữ liệu lớn thì cách tổ chức phải khác và cách nhập liệu cũng khác, khi đó vấn đề đưa ra sẽ khác.
P/s: xin bạn chỉ dẫn thêm mình cách sử dụng worksheet change trong trường hợp này để tránh trường hợp combobox phải nạp liên tục.
Cám ơn mọi người, với vấn đề này thì mình nghĩ chỉ cần làm new sheet rồi Advance filter là đơn giản, gọn, nhẹ. Nhưng mình đang muốn tìm một hướng đi khác tiện hơn , mong mọi người góp ý, mình mới xài excel được 5 ngày à nên không hiểu VBA lắm, hà hàtại vì tôi từng bí dính chưởng cái vụ đó........hhihihih
ý tôi nói là cái selection change (hồi nãy tôi viết lầm là work sheet change)
tôi nghĩ là có thể sử dụng worksheet change ở cột D (ex [D51000])
tức nhiên là kèm theo dk là cột C không rổng chẳng hạn
Nếu mới chỉ 5 ngày thì tốt nhất bạn cứ nên đi "đường cũ" cho quen đi đã nhé, tìm "đường mới" dễ lạc lắm.Cám ơn mọi người, với vấn đề này thì mình nghĩ chỉ cần làm new sheet rồi Advance filter là đơn giản, gọn, nhẹ. Nhưng mình đang muốn tìm một hướng đi khác tiện hơn , mong mọi người góp ý, mình mới xài excel được 5 ngày à nên không hiểu VBA lắm, hà hà