Tổng hợp hỏi đáp về excel (theo pcworld)

Liên hệ QC
Hỏi: Trong Excel, khi sử dụng hàm VLOOKUP để tìm kiếm thì hàm này không trả về giá trị tìm kiếm nếu tiêu chuẩn tìm là một số < 1. Đây có phải là một lỗi của Excel hay do hạn chế của hàm này? Có cách khắc phục hay hàm nào thay thế được không? - Để nội suy tuyến tính, ví dụ tìm trị số go khi ro= 4.4 tôi phải dùng cách thủ công là tìm trị số go bằng hàm VLOOKUP ứng với trị số ro lớn hơn và nhỏ hơn 4.4 sau đó dùng công thức nội suy tuyến tính để tính ra trị số go cần tìm, nên vừa chậm vừa không khoa học, trong Excel có hàm nào thực hiện được phép nội suy tuyến tính không hoặc có cách giải quyết nào khác giúp nội suy tuyến tính nhanh chóng hơn không?



Đáp:

Chúng tôi không hiểu thuật ngữ “tiêu chuẩn tìm kiếm” của bạn tương ứng với toán hạng nào của hàm VLOOKUP, hàm này có 4 toán hạng theo đặc tả sau :

VLOOKUP(lookup_value, table_array, col_index_num, range_lookup)

trong đó thông số lookup_value miêu tả trị cần tìm ở cột đầu trong bảng dữ liệu table_array, nếu tìm được thì trả về trị ở cột thứ col_index_num trong bảng (cùng hàng với giá trị tìm kiếm). Thông số range_lookup qui định cột đầu của bảng có thứ tự tăng dần (TRUE) hay không có thứ tự gì cả (FALSE). Do đó để luôn có kết quả tìm kiếm đúng, bạn nên dùng trị FALSE cho thông số thứ 4 này, mặc dù không được nhanh.

Trong trường hợp giá trị cần tìm không có trong bảng và muốn nội suy nó thì bạn phải viết 1 thủ tục dạng macro hay dạng add-ins (chạy nhanh hơn macro) để thực hiện phương pháp nội suy mong muốn. Excel chưa cung cấp hàm nội suy này. Nếu thấy phương pháp nội suy tuyến tính chưa có chính xác cao thì bạn có thể dùng phương pháp nội suy khác để cho kết quả chính xác hơn.
 
Trước khi Post loạt bài không phải của mình như thế này em cũng đã cân nhắc nhưng vì lợi ích của nhiều người nếu có gì sai mong mọi người thông cảm !
Xin nhắc lại những bài viết trên đây đuợc tổng hợp từ http://pcworld.com.vn/
 
Lần chỉnh sửa cuối:
Đây là những kiến thức tổng hợp rất hay về Excel và VBA.

Cám ơn anh skyonline đã dày công sư tầm! !$@!! !$@!! --=0
 
Cho mình hỏi : Có cách nào để mình có thể lấy dữ liệu của 1 file Excel mà không mở file đó không. Ý mình cụ thể là : Giả sử 1 có 1 file chứa rất nhiều dữ liệu(giả sử là file 1); mình lập 1 file excel khác và muốn lấy các thông tin tại file 1 kia. Mình không muốn mở file 1 vì dung lượng rất lớn. Các bạn bầy cho mình với. (Mình diễn đạt hơi lủng củng, mong diễn đàn thông cảm)
 
Các pro giúp em với, em thấy thầy Thanh có hàm myVlookup như sau:
Function myVlookUp(Lookup_Value, lookup_range As Range, index_col As Long)
Dim x As Range
Dim Result As String
Result = ""
For Each x In lookup_range
If x = Lookup_Value Then
Result = Result & ", " & x.Offset(0, index_col - 1)
End If
Next
myVlookUp = Right(Result, Len(Result) - 1)
End Function
em muốn thêm tính năng hàm chỉ tìm đến giá trị thứ n thì dừng không tìm nữa phải làm thế nào:
 
Web KT

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

Back
Top Bottom