Đăng ký học Excel và VBA cùng GPE tháng 11 - TPHCM

Mua sách "VBA trong Excel - Cải thiện và tăng tốc" tái bản

Hàm tìm kiếm giá trị trong khoảng

Thảo luận trong 'Hàm và công thức Excel' bắt đầu bởi tuvn254, 9 Tháng chín 2008.

  1. tuvn254

    tuvn254 Thành viên hoạt động

    E có 1 file của đứa bạn cho mà không hiểu công thức mong các pác giải thích hộ e với. Cảm ơn các pác nhìu !!!!!
     

    Các file đính kèm:

  2. BNTT

    BNTT Bùi Nguyễn Triệu Tường

    Bạn nên tìm hiểu thêm về hàm VLOOKUP() ở mục Tra cứu hàm Excel dưới chữ ký của tôi.

    Hàm này, nếu không dùng tham số thứ tư, nó sẽ tìm giá trị nhỏ nhất mà lớn hơn giá trị đem đi dò.
    Do đó, bởi vì số 42 không có trong bảng dò, nên nó sẽ tìm giá trị lớn nhất (trong bảng dò) mà nhỏ hơn 42, đó là 41.
    Bạn hiểu chứ.

    Còn chuyện con số 6, công thức tại ô K15 là: =IF(I15=0, 0, VLOOKUP($E15, $D$31:$J$71, J15+1))
    Nó chỉ nói hàm VLOOKUP lấy con số ở E15 dò trong bảng dò $D$31:$J$71, dò ở cột bao nhiêu, thì lấy con số ở ô J15 cộng thêm 1.
    Con số ở J5 là số 6, cộng thêm 1 là số 7, vậy nó sẽ dò ở cột thứ 7 của bảng dò này. Là đúng.
    Con số 6 (+1) này là chỉ số cột để dò, chứ không phải chỉ "cấp đường" đâu, bạn đừng nhầm lẫn.
    Bảng dò $D$31:$J$71 này có 7 cột (từ D đến J), bạn xem lại có đúng không nhé.

    Hy vọng tôi nói vậy bạn hiểu.
     
  3. Mr Okebab

    Mr Okebab Ngon Ngất Ngây

    Đây là cách dùng tham số của hàm Vlookup, nó tìm không chính xác nhưng có chọn lọc, bạn có thể tìm hiểu trên diễn đàn nhé :

    Thân!
     
  4. hoangminhtien

    hoangminhtien Thành viên tích cực

    Bạn xem lại hàm Vlookup nhé!
    [FONT=&quot]VLOOKUP[/FONT]
    [FONT=&quot](lookup_value,table_array,row_index_num,range_lookup)[/FONT]
    [FONT=&quot]lookup_value[/FONT]
    [FONT=&quot]: là tìm một giá trị dùng để tìm kiếm, nó có thể là một giá trị, một tham chiếu hay một chuỗi ký tự.[/FONT]
    [FONT=&quot]table_array[/FONT]
    [FONT=&quot] là vùng chứa dữ liệu cần tìm. Đây là bảng dữ liệu phụ có nội dung thường cố định, bao quát để bạn lấy dữ liệu.[/FONT] ·[FONT=&quot]Các giá trị ở cột đầu tiên có thể là giá trị số, chuỗi ký tự, hoặc logic.[/FONT]
    • [FONT=&quot]Nếu range_lookupTRUE thì các giá trị ở cột đầu tiên của bảng dữ liệu phụ này phải được sắp xếp tăng dần từ -2,1,0,1,2,...,A-Z,FALSE,TRUE. Nếu không hàm VLOOKUP sẽ trả giá trị không chuẩn xác.[/FONT]
    ·[FONT=&quot]Để sắp xếp các giá trị trong bảng dữ liệu từ trên xuống để hàm cho kết quả phù hợp khi bạn dùng range_lookup là TRUE: Chọn vùng dữ liệu cần sắp xếp, kích vào menu Data, Sort. Nhấn nút Options bên dưới, đánh dấu Soft top to bottom, rồi nhấn OK. Kích chọn cột cần sắp xếp trong danh sách. Chọn Ascending, và nhấn OK[/FONT]
    [FONT=&quot]row_index_num[/FONT]
    [FONT=&quot] số thứ tự cột trên bảng dữ liệu phụ mà dữ liệu bạn cần lấy. Giá trị trả về nằm trên cột bạn chỉ định này và ở dòng mà hàm tìm thấy giá trị dò tìm lookup_value.[/FONT]
    [FONT=&quot]range_lookup[/FONT]
    [FONT=&quot] là giá trị logic bạn chỉ định muốn VLOOKUP tìm kiếm chính xác hay là tương đối. Nếu range_lookup là TRUE hàm sẽ trả về kết quả tìm kiếm tương đối. Nếu không tìm thấy kết quả chính xác, nó sẽ trả về một giá trị lớn nhất mà nhỏ hơn giá trị tìm kiếm lookup_value. Nếu range_lookup là FALSE hàm tìm kiếm chính xác, nếu không có trả về lỗi #N/A![/FONT]
    Công thức[FONT=&quot]của bạn VLOOKUP($E15,$D$31:$J$71,J15+1)[/FONT] [FONT=&quot]giá trị range lookup bạn không nhập nên nó mạc định là TRUEdo đó nó sẽ tìm gần đúng như ở trên đã nói[/FONT] [FONT=&quot]giá trị [/FONT][FONT=&quot]row_index_num [/FONT][FONT=&quot]của bạn bằng[/FONT][FONT=&quot]J15+1[/FONT][FONT=&quot] tứ là băng 6+1=7, do đó nó sẽ tìm ở cột thứ 7 cho bạn[/FONT] [FONT=&quot]chính vì vậy mà kết quả vẩn tìm được như bạn thấy![/FONT]
    nếu bạn muốn công thực không tìm thấy thì bạn dùng công thức sau

    IF(I15=0,0,IF(ISNA(
    [FONT=&quot]VLOOKUP($E15,$D$31:$J$71,J15+1,0)[/FONT]),0[FONT=&quot],VLOOKUP($E15,$D$31:$J$71,J15+1,0))[/FONT])
     
    Lần chỉnh sửa cuối: 9 Tháng chín 2008

Chia sẻ trang này