Ơ,
--
Hình như anh Levanduyet cắt mất đoạn chương trình của anh SA_DQ rồi thì phải!
Em đọc qua thấy anh Duyệt góp ý như vầy vẫn chưa đầy đủ nên muốn có ý kiến thêm:
1. Đây là chủ đề "
Co (chắc là "cho" chứ không phải "co"
tôi hỏi về việc Find dữ liệu bằng Ctrl + F" nhưng các bài thảo luận hình như đi xa với ý đồ của người đặt vấn đề. "Find dữ liệu bằng Ctrl + F" ở đây được hiểu là thực hiện lệnh tìm kiếm trong Excel, lệnh tương đương:
Edit/Find. Yêu cầu là "chỉ tìm kiếm ở những cột, hàng hoặc cell cho phép, còn những cái khác thì không". Nếu chủ đề này được đưa vào chuyên mục "Excel và VBA" thì chẳng có gì để nói, nhưng đưa vào chuyên mục "Excel và kế toán" thì điều đáng bàn ở đây là cần giải đáp cho người làm kế toán chứ không phải người biết VBA. Cách giải quyết vấn đề vì thế mà khác nhau, thậm chí làm cho
khongnghe_khongbiet nói:
Vấn đề phức tạp hen .....
Theo em, ý kiến của linhtinh:
linhtinh nói:
Khi bác muốn tìm số trong vùng nào thì chọn vùng đó rồi ctrl+F vậy thôi ah.
có vẻ là câu trả lời thích hợp với thắc mắc của khongnghe_khongbiet, tuy nhiên cần bổ sung thêm ý nghĩa của một số tuỳ chọn khác trong mục Options, như: Within, Search, Lookin, Format, Match Case...
2. Đoạn chương trình tìm kiếm
VieFIND của anh SA_DQ, theo em, ngoài việc "tìm chuỗi trong cột B & cột C mà thôi không tuỳ thuộc vô vùng tìm là bao la cỡ nào" chương trình còn chưa tối ưu về tốc độ. Nếu tìm trong "bảng dữ liệu rất nhiều số" của khongnghe_khongbiet em đoán thể nào bác khongnghe_khongbiet cũng "không nghe - không biết" luôn(!). Trong MSE VBA, đối tượng
Range có phương thức
Find. Đây là phương thức tìm kiếm trong vùng dữ liệu, cú pháp:
Range(<Vùng muốn tìm>).Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat) Nếu sử dụng phương thức này thì thay thế cả đoạn thủ tục dài dòng của SA_DQ, tốc độ được cải tiến hơn hẳn vì hàm đã được biên dịch.
Đôi điều góp ý!