2011-01-21 38 views
15

Tôi có một bảng trông như thế nàyExcel thất bại tại Chuỗi VLOOKUP

B C 
43 XS 6 
44 S 11 
45 M 16 
46 L 21 
47 XL 26 
48 XXL 31 

Tôi đã viết công thức:

`VLOOKUP("S",B43:C48,2)` 

Nó trả về một giá trị 21. TẠI SAO ?! Nó sẽ trở lại 11!

cập nhật Tôi đã sao chép lỗi chính xác này trong bảng khác. VLOOKUP hoạt động khi giá trị tìm kiếm là một số nhưng luôn thất bại khi tôi sử dụng chuỗi.

Trả lời

23

VLOOKUP làm những điều kỳ lạ, trừ khi bạn chỉ định một "kết hợp chính xác" với đối số thứ tư, như vậy:

=VLOOKUP("S",B43:C48,2,FALSE) 

Từ tập tin trợ giúp của Excel:

VLOOKUP (lookup_value, table_array, col_index_num, range_lookup)

Nếu range_lookup là TRUE, các giá trị trong cột đầu tiên của table_array phải được đặt theo thứ tự tăng dần: ..., -2, -1, 0, 1, 2, ..., AZ, FALSE, THẬT; nếu không VLOOKUP có thể không cung cấp giá trị chính xác. Nếu range_lookup là FALSE, table_array không cần phải được sắp xếp.

Và cũng:

range_lookup là một giá trị logic xác định xem bạn có muốn VLOOKUP để tìm một kết hợp chính xác hoặc một trận đấu tương đối. Nếu TRUE hoặc bị bỏ qua, kết quả khớp gần đúng được trả về. Nói cách khác, nếu không tìm thấy kết quả khớp chính xác, giá trị lớn nhất tiếp theo nhỏ hơn lookup_value sẽ được trả lại. Nếu FALSE, VLOOKUP sẽ tìm thấy kết quả khớp chính xác. Nếu không tìm thấy, giá trị lỗi #N/A sẽ được trả lại.

+2

Chỉ cần một đoán lý do tại sao: để xác định một trận đấu khó khăn từ một danh sách không được phân loại sẽ infeasibly đắt vì bạn có thể phải lặp qua danh sách một lớn nhiều lần. –

+2

@Ciaran Keating: Tôi nghĩ bạn đúng. Excel có thể sử dụng tìm kiếm nhị phân theo mặc định. Điều đó sẽ giải thích từ ngữ trong tập tin trợ giúp và kết quả kỳ quái trong ví dụ của hatorade. –

3

Ngoài ra, các loại định dạng không khớp đang gây ra sự cố cho bạn. (Một ô được định dạng là có chứa các số và ô còn lại được định dạng là có chứa văn bản). Xem vấn đề/giải pháp # 2 trên trang này:

Solutions to Three Common Problems when Using VLOOKUP()

Các vấn đề liên quan