Code hàm Vlookup

Liên hệ QC

hoahuongduong1986

Thành viên thường trực
Tham gia
14/11/18
Bài viết
346
Được thích
40
Em chào các anh chị,
Cho em hỏi hàm VL của em dưới đây bị sai gì mà không ra kết quả ạ. Em cảm ơn ạ.

Sub timkiem()
Dim rs
rs = Application.VLookup(Sheet1.Range("C1: D6"), Sheet2.Range("L1") & "*", 2, False)
Sheet2.Range("K1").Value = rs
End sub
 
Hàm "Vờ Lờ" này mới có sao?
Nhìn nó tưởng tượng ra kinh quá.

@thớt: chịu khó gõ từ ngữ cho rõ ràng sẽ học được thói gõ hàm rõ ràng.
1. Tham số đầu tiên của VLookup là trị cần dò, tham thứ hai là mảng để dò.
2. Dùng Hàm Application.VLookup thì ophair xét xem nó có dò được hay không. Nếu không dò được nó trả về Error; thử bằng hàm IsError.
 
Upvote 0
Nhìn nó tưởng tượng ra kinh quá.

@thớt: chịu khó gõ từ ngữ cho rõ ràng sẽ học được thói gõ hàm rõ ràng.
1. Tham số đầu tiên của VLookup là trị cần dò, tham thứ hai là mảng để dò.
2. Dùng Hàm Application.VLookup thì ophair xét xem nó có dò được hay không. Nếu không dò được nó trả về Error; thử bằng hàm IsError.
Dạ vâng ạ,
Em sửa lại rồi theo đoạn dưới đây

rs = Application.VLookup(Sheet2.Range("L1"), Sheet1.Range("C1:D6"), 2, False)
rs = Application.VLookup(Sheet2.Range("L1") & "*", Sheet1.Range("C1:D6"), 2, False)
Sheet2.Range("K1").Value = rs

If TypeName(rs) = "Error" Then
MsgBox ("Khong có ket qua")
End If

Nếu em cố định như RS bôi đậm thì nó ra kết quả rồi ạ. Cho em hỏi nếu em dùng kiểu RS bôi nghiêm để tìm kiểu thay vì điều kiện tìm là 1111 thì chỉ cần gõ 111 nó vẫn hiểu thì hàm Vlookup này có tìm được không ạ. Mong anh chỉ giúp ạ.
 
Upvote 0
...

Nếu em cố định như RS bôi đậm thì nó ra kết quả rồi ạ. Cho em hỏi nếu em dùng kiểu RS bôi nghiêm để tìm kiểu thay vì điều kiện tìm là 1111 thì chỉ cần gõ 111 nó vẫn hiểu thì hàm Vlookup này có tìm được không ạ. Mong anh chỉ giúp ạ.
Thì cứ thử trực tiếp trên bảng tính trước xem.
 
Upvote 0
"*" là wildcard, chỉ có ý nghĩa với chuỗi. Dùng cho số thì phải qua giai đoạn xảo thuật.
Nhưng nếu VBA gọi hàm bảng tính mà còn phải qua xảo thuật thì nên suy nghĩ lại, có thể tự viết hàm khác hiệu quả hơn.
 
Upvote 0
"*" là wildcard, chỉ có ý nghĩa với chuỗi. Dùng cho số thì phải qua giai đoạn xảo thuật.
Nhưng nếu VBA gọi hàm bảng tính mà còn phải qua xảo thuật thì nên suy nghĩ lại, có thể tự viết hàm khác hiệu quả hơn.
Dạ vâng anh. Để em xem cách khác ạ !
 
Upvote 0
Web KT

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

Back
Top Bottom