thông thường chúng ta hay dùng hàm vlookup , hoặc hlookup , để tìm giá trị trong một bảng dữ liệu

nhưng nếu như bảng dữ liệu tại sheet này không có phải chuyển sang bảng dữ liệu ở những sheet khác để tìm kiếm thì cách viết công thức như sau :

Bạn đang xem: Dùng hàm VLOOKUP tìm dữ liệu trong nhiều Sheet

ví dụ hàm vlookup chỉ trong một bảng của sheet

=vlookup(c1,$a$2:$b$25,2,0)

hàm vlookup tìm kiếm nhiều bảng tại những sheet khác nhau

=if(isna(vlookup(c1,sheet1!$a$2:$b$25,2,0)),if(isna(vlookup(c1,sheet2!$a$2:$b$25,2,0)),

if(isna(vlookup(c1,sheet3!$a$2:$b$25,2,0)),vlookup(c1,sheet3!$a$2:$b$25,2,0)),

vlookup(c1,sheet2!$a$2:$b$25,2,0)),vlookup(c1,sheet1!$a$2:$b$25,2,0))

Xem thêm: Sử dụng hàm SUM để tính tổng các số trong một phạm vi

trong ví dụ trên được tìm kiếm qua 3 sheet khác nhau .

bạn cũng có thể dùng macro tìm kiếm qua tất cả các sheet . macro viết như sau

function vlookallsheets(look_value as variant, tble_array as range, col_num as integer, optional range_look as boolean)

dim wsheet as worksheet

dim vfound

on error resume next

    for each wsheet in activeworkbook.worksheets

        with wsheet

        set tble_array = .range(tble_array.address)

            vfound = worksheetfunction.vlookup _

            (look_value, tble_array, _

            col_num, range_look)

        end with

Xem thêm: HÀM Countif CÚ PHÁP VÍ DỤ MINH HỌA – Blog chia sẽ kiến thức học excel

        if not isempty(vfound) then exit for

    next wsheet

    set tble_array = nothing

    vlookallsheets = vfound

end function

công thức tìm kiếm trên với 3 sheet trước đó có thể được viết như sau

=vlookallsheets(c1,a1:b25,2,false)

dùng hàm vlookup tìm dữ liệu trong nhiều sheet

Nguồn: https://ngoalongtamquoc.vn
Danh mục: EXCEL