M.n giúp e làm công thức tìm kiếm bằng VBA (giống Vlookup) với ạ

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài
Không sao đâu bạn. Ông già khó tính đó ai mà không biết!
Biết nhưng mà biết chưa hết.
- Nói năng đàng hoàng thì vấn đề sẽ được tôi giải thích kỹ lưỡng. Ăn nói hời hợt thì tôi chỉ giải thích khi thấy có người cần học.

Điển hình, nếu bạn chịu khó nói đàng hoàng thì tôi đã giải thích rõ tại sao bài này phải VBA. Nếu chịu khó đọc bài người khác cho kỹ thì tôi đã giải thích code ở bài #2.

Riêng với thớt, nếu chịu khó viets rõ, đừng viết tắt thì tôi đã chỉ cho một vài cách khác.
 
Hình như điều kiện 3 là xóa bỏ sheet2 thì kết quả sheet1 vẫn tồn tại ấy. Nên chỉ có thể là giá trị. Lại đoán mò. :wallbash: :wallbash: :wallbash:
Em đồng ý với bác ạ.Ý tưởng làm file này của e tức là lấy kết quả là value chứ k phải hàm. vs cả e có nói bên trên nữa là nếu đặt công thức dài và phức tạp. file chứa hơn 10000 dòng ( file chính của e thì lượng hàm sẽ x3 tức ~ 30k cells chứa hàm) chưa kể định dạng trong file nữa. sẽ rất là nặng. như kia thì lúc cần e chỉ cần chỉnh lại code vba "rng" ví dụ auto update data cho 200-300 dòng mới cập nhật vào sẽ rất tiện. cũng bỏ qua đc các bước copy paste value mất tgian. công việc mà thuận tiện và đơn giản thì nên áp dụng. các file nhẹ e cũng ưu tiên xài hàm chứ không phải là k làm đc ạ.
 
Lần chỉnh sửa cuối:
Em đồng ý với bác ạ.Ý tưởng làm file này của e tức là lấy kết quả là value chứ k phải hàm. vs cả e có nói bên trên nữa là nếu đặt công thức dài và phức tạp. file chứa hơn 10000 dòng ( file chính của e thì lượng hàm sẽ x3 tức ~ 30k cells chứa hàm) chưa kể định dạng trong file nữa. sẽ rất là nặng. như kia thì lúc cần e chỉ cần chỉnh lại code vba "rng" ví dụ auto update data cho 200-300 dòng mới cập nhật vào sẽ rất tiện. cũng bỏ qua đc các bước copy paste value mất tgian. công việc mà thuận tiện và đơn giản thì nên áp dụng. các file nhẹ e cũng ưu tiên xài hàm chứ không phải là k làm đc ạ.
Thường thì khi dùng VBA thì hạn chế dùng hàm excel nhất nếu được. Thế nó mới truyên nghiệp.
 
Thường thì khi dùng VBA thì hạn chế dùng hàm excel nhất nếu được. Thế nó mới truyên nghiệp.
Lệ này ở đâu vậy?

Chú: bình thường thì tôi đã chỉ cách dùng rồi. Nhưng tôi bản tính tôi kém hào phóng như mọi người. Xem giải thích ở bài #21.
 
Thường thì khi dùng VBA thì hạn chế dùng hàm excel nhất nếu được. Thế nó mới truyên nghiệp.
Muốn truyên nghiệp thì đầu tiên phải truyên cần.
Mà muốn có 1 tập thể truyên cần, thì phải tuyên chuyền rộng rãi, và phải có cách chuyền cảm hứng.
 
Lệ này ở đâu vậy?

Chú: bình thường thì tôi đã chỉ cách dùng rồi. Nhưng tôi bản tính tôi kém hào phóng như mọi người. Xem giải thích ở bài #21.
Lệ này theo trường phái truyên nghiệp mà bác.
Nếu như em viết được thì em sẽ không dùng Vlookup. Em sẽ theo trường phái For next.

Bác cũng nên theo trường phái này, vì nó là "cho tiếp". Người xưa có câu "Hãy cho đi để rồi mất hết". --=0 --=0 --=0
 
Lệ này theo trường phái truyên nghiệp mà bác.
Nếu như em viết được thì em sẽ không dùng Vlookup. Em sẽ theo trường phái For next.

Bác cũng nên theo trường phái này, vì nó là "cho tiếp". Người xưa có câu "Hãy cho đi để rồi mất hết".
Thế nào là "viết được"? Định nghĩa "được" rất tương đối.
Nếu tôi "viết được" thì tôi chả dùng cái gì, của ai cả.
Rất tiếc, VBA không phải là loại ngôn ngữ của lập trình nghiêm chỉnh. Không có cách truy cập trị theo địa chỉ. Không có kỹ thuật chuyền ống (piping). Script tốt hơn nhiều.

"tiếp" của bạn là tiếp tục hay tiếp thu?
Bạn thích "tục" cho nên ở môi trường nào cũng được. Tôi thích "thu" cho nên môi trường phải tương đối lịch sự một chút.
 
Mượn topic này chen vô nhờ vả chút hén!
Tôi có 1 vấn đề cần xử lý mà không làm được. Nhờ bác @VetMini hướng dẫn cách làm (VBA) được không nha. Hoặc viết luôn code thì càng tốt.
1. Sheets trích lọc KQ từ sheet 1. Điều kiện: từ ngày đến ngày, theo nhiều chủ thể mã nhà cung cấp, nguồn gốc....
2. Trích lọc ra kết quả: loại bỏ giá trị trùng và cộng tổng theo hàng (mã, tên, ncc, nguồn gốc, tổng sl). Tất nhiên sheet lọc KQ tính tổng không dùng công thức trên sheet.
Mong bác đào tạo thêm nhá. Cảm ơn bác!
 
Test thử đoạn code này xem sao

Mã:
Option Explicit
Sub vlookup()
Dim lr&, col&, rng As Range, ce As Range
Set rng = Sheets("Sheet2").Range("A2:T100000")
Sheets("Sheet1").Activate
lr = Cells(Rows.Count, "B").End(xlUp).Row
For Each ce In Range("D3:F" & lr)
    With ce
        If .Value = "" Then
            col = IIf(.Column = 4, 13, IIf(.Column = 5, 17, 19))
            .Value = Evaluate("=IFERROR(VLOOKUP(" & Cells(.Row, 2).Value & "," & "Sheet2!" & rng.Address & "," & col & ",0),"""")")
        End If
    End With
Next
End Sub
Hay quá. Em cũng cần dạng này để lọc dữ liệu.
 
Thế bạn muốn pho-nách là gì?
cho ... tiếp là boa (buộc boa)? nghĩa này thì tôi đồng ý với bạn. Thu nhập cỡ tôi chắc chắn là "cho đi để rồi mất hết". Một tháng lương "nách" ba quán bia là hết.
 
Web KT
Back
Top Bottom