Hướng dẫn

Cách Dùng XLOOKUP Lấy Dữ Liệu Từ Sheet Khác Trong Google Sheets [2026]

Tuân HoangTuân Hoang
8 tháng 8, 2026
Cập nhật: 20 tháng 8, 2026
7 phút đọc
Ảnh minh họa bài viết: Cách Dùng XLOOKUP Lấy Dữ Liệu Từ Sheet Khác Trong Google Sheets [2026]

XLOOKUP là gì và tại sao nên dùng thay VLOOKUP khi lấy dữ liệu từ sheet khác

Khi cần kéo dữ liệu từ một sheet (tab) này sang sheet khác trong cùng file Google Sheets, phần lớn người dùng vẫn phản xạ gõ VLOOKUP. Nhưng từ khi Google Sheets hỗ trợ đầy đủ XLOOKUP (chính thức từ 2022, ổn định hoàn toàn từ 2023), đây gần như luôn là lựa chọn tốt hơn cho các thao tác tra cứu chéo sheet.

Cú pháp cơ bản:

=XLOOKUP(giá_trị_tìm, mảng_tìm_kiếm, mảng_kết_quả, [giá_trị_nếu_không_tìm_thấy], [chế_độ_khớp], [chế_độ_tìm_kiếm])

So với VLOOKUP, XLOOKUP giải quyết 3 điểm đau kinh điển khi tra cứu chéo sheet:

  • Không cần đếm cột: VLOOKUP bắt bạn đếm số cột thứ mấy chứa kết quả (dễ sai khi sheet nguồn thêm/xóa cột). XLOOKUP chỉ định trực tiếp cột kết quả.
  • Tra cứu hai chiều: Không bị giới hạn tìm từ trái sang phải như VLOOKUP — có thể lấy dữ liệu ở cột bên trái cột tìm kiếm.
  • Xử lý lỗi tích hợp sẵn: Tham số thứ 4 thay thế hoàn toàn việc phải bọc thêm IFERROR bên ngoài.

Nếu bạn đang phân vân giữa 3 hàm tra cứu phổ biến, bài VLOOKUP vs INDEX/MATCH vs XLOOKUP: Chọn Hàm Nào Trong Google Sheets? so sánh chi tiết hiệu năng và trường hợp dùng của từng hàm.

Cú pháp XLOOKUP lấy dữ liệu từ sheet khác — công thức mẫu thực tế

Giả sử bạn có file quản lý bán hàng gồm 2 sheet: "DonHang" (chứa mã khách hàng ở cột A) và "KhachHang" (chứa mã khách hàng cột A, tên khách hàng cột B, số điện thoại cột C). Bạn muốn ở sheet DonHang tự động điền tên khách hàng dựa theo mã.

Công thức đặt tại ô B2 của sheet DonHang:

=XLOOKUP(A2, KhachHang!A:A, KhachHang!B:B, "Không tìm thấy")

Giải thích từng phần:

  • A2 — mã khách hàng cần tra cứu (nằm ở sheet hiện tại)
  • KhachHang!A:A — toàn bộ cột mã khách hàng bên sheet nguồn
  • KhachHang!B:B — cột chứa kết quả muốn lấy về (tên khách hàng)
  • "Không tìm thấy" — giá trị hiển thị nếu không khớp, thay vì lỗi #N/A

Muốn lấy nhiều cột cùng lúc (tên + số điện thoại), gộp mảng kết quả bằng dấu hai chấm:

=XLOOKUP(A2, KhachHang!A:A, KhachHang!B:C, "Không tìm thấy")

Công thức này tự động tràn (spill) ra 2 ô liền kề — không cần kéo công thức riêng cho từng cột, tiết kiệm đáng kể thời gian với bảng dữ liệu lớn.

Lưu ý về tên sheet có khoảng trắng hoặc ký tự đặc biệt

Nếu tên sheet nguồn có dấu cách hoặc số ở đầu (ví dụ "Danh Sách KH", "2026 Data"), bắt buộc phải đặt tên sheet trong dấu nháy đơn:

=XLOOKUP(A2, 'Danh Sách KH'!A:A, 'Danh Sách KH'!B:B, "Không tìm thấy")

Đây là lỗi phổ biến nhất khiến công thức báo lỗi cú pháp ngay khi vừa gõ xong.

Tra cứu ngược và tra cứu nhiều điều kiện qua sheet khác

Một trong những lý do XLOOKUP vượt trội VLOOKUP là khả năng tra cứu ngược (lấy dữ liệu ở cột bên trái cột khóa) mà không cần đảo cột hay dùng INDEX/MATCH phức tạp.

Ví dụ sheet "SanPham" có cấu trúc: cột A là Tên sản phẩm, cột B là Mã SKU. Bạn muốn từ Tên sản phẩm tra ra Mã SKU nhưng cột khóa tra cứu lại nằm bên phải kết quả:

=XLOOKUP(A2, SanPham!A:A, SanPham!B:B)

XLOOKUP xử lý việc này tự nhiên vì nó không quan tâm thứ tự cột, khác hẳn VLOOKUP luôn yêu cầu cột tìm kiếm phải nằm bên trái cột kết quả.

Tra cứu nhiều điều kiện (kết hợp cột) qua sheet khác

Trường hợp cần khớp theo 2 điều kiện — ví dụ tra tồn kho theo cả Mã sản phẩm và Kho hàng — ghép chuỗi các mảng điều kiện bằng toán tử &:

=XLOOKUP(A2&B2, TonKho!A:A&TonKho!B:B, TonKho!C:C, "Không có dữ liệu")

Đây là công thức mảng (array formula ngầm), Google Sheets tự nhận diện và tính đúng mà không cần nhấn Ctrl+Shift+Enter như Excel bản cũ. Cách làm này đặc biệt hữu ích khi xây dựng hệ thống quản lý tồn kho nhiều chi nhánh — mô hình phổ biến trong bài Giải Pháp Google Sheets Cho Ngành Bán Lẻ: Từ Cửa Hàng Đơn Đến Chuỗi.

Xử lý lỗi #N/A và các tình huống XLOOKUP không hoạt động

Khi tra cứu chéo sheet, các lỗi thường gặp và cách khắc phục:

Lỗi/Vấn đềNguyên nhânCách khắc phục
#N/AKhông tìm thấy giá trị khớp, hoặc dữ liệu có khoảng trắng thừaThêm tham số thứ 4 làm giá trị mặc định; dùng TRIM() để làm sạch dữ liệu nguồn
#REF!Sheet nguồn bị đổi tên hoặc xóaKiểm tra lại tên sheet trong công thức, cập nhật theo tên hiện tại
Kết quả sai lệch dù có vẻ khớpMột bên là số (number), bên kia là text (ví dụ mã "001" vs 1)Đồng nhất định dạng bằng VALUE() hoặc TEXT() trước khi so khớp
Công thức chạy chậm với file lớnTham chiếu cả cột A:A trên hàng chục nghìn dòngGiới hạn phạm vi cụ thể, ví dụ A2:A5000 thay vì A:A

Với dữ liệu cần khớp gần đúng (ví dụ tra mức thuế theo khoảng doanh thu), dùng tham số thứ 5 (chế độ khớp) với giá trị -1 (khớp gần đúng nhỏ hơn) hoặc 1 (khớp gần đúng lớn hơn):

=XLOOKUP(A2, BangThue!A:A, BangThue!B:B, "N/A", -1)

Kết hợp XLOOKUP với ARRAYFORMULA để tự động điền toàn cột

Thay vì kéo công thức xuống từng dòng — dễ lệch tham chiếu khi thêm/xóa dòng — bọc XLOOKUP trong ARRAYFORMULA để tự động áp dụng cho toàn bộ cột, kể cả dòng mới thêm sau này:

=ARRAYFORMULA(IF(A2:A="", "", XLOOKUP(A2:A, KhachHang!A:A, KhachHang!B:B, "Không tìm thấy")))

Phần IF(A2:A="", "", ...) ngăn công thức hiển thị kết quả rác ở các dòng trống. Đặt công thức này duy nhất ở dòng 2, nó tự tràn xuống hết cột — không cần copy-paste lại mỗi khi có đơn hàng mới.

Kỹ thuật này thường được dùng trong các file CRM tự xây trên Google Sheets, nơi cần tự động đối chiếu thông tin khách hàng giữa sheet giao dịch và sheet danh bạ — tham khảo cách triển khai đầy đủ trong bài Xây Dựng CRM Quản Lý Khách Hàng Với Google Sheets.

Hiệu năng: XLOOKUP có làm chậm file khi tra cứu sheet lớn?

Với file dưới 10.000 dòng, chênh lệch tốc độ giữa XLOOKUP và VLOOKUP gần như không đáng kể. Nhưng khi file vượt 20.000-50.000 dòng và có hàng trăm công thức tra cứu chạy song song, một vài nguyên tắc giúp giữ file mượt:

  • Tránh tham chiếu nguyên cột (A:A) nếu biết trước phạm vi dữ liệu thực tế — giới hạn cụ thể giảm tải tính toán đáng kể.
  • Hạn chế lồng nhiều XLOOKUP tra cứu chéo 3-4 sheet trong cùng một công thức; cân nhắc tách thành cột trung gian (helper column) để Sheets cache kết quả.
  • Với file có nhiều tab liên kết chằng chịt kiểu quản lý dự án hay lịch làm việc, nên đặt phần tra cứu ở sheet riêng thay vì rải khắp nơi — cách tổ chức này được minh họa trong Tạo Lịch Quản Lý Dự Án Trên Google Sheets: Template + Hướng Dẫn.
  • Nếu XLOOKUP xử lý mảng lớn kết hợp ARRAYFORMULA gây giật lag, cân nhắc chuyển sang QUERY hoặc dùng Apps Script để xử lý theo lô — các kỹ thuật nâng cao này được trình bày kỹ trong bài Google Sheets Nâng Cao: XLOOKUP, ARRAYFORMULA, QUERY, Apps Script và 10 Thủ Thuật Bí Ẩn.

Với các doanh nghiệp SME đang vận hành nhiều sheet quản lý (đơn hàng, tồn kho, khách hàng) tách rời nhau, việc chuẩn hóa cách tra cứu chéo sheet bằng XLOOKUP ngay từ đầu giúp tránh phải viết lại toàn bộ công thức khi dữ liệu phình to — đây cũng là nguyên tắc thiết kế được áp dụng trong các mẫu quản lý sẵn có trên SheetStore.

Câu hỏi thường gặp

XLOOKUP có lấy được dữ liệu từ sheet khác trong cùng file không?

Có. Chỉ cần thêm tên sheet trước phạm vi ô, ví dụ =XLOOKUP(A2, 'Sheet2'!A:A, 'Sheet2'!B:B). Google Sheets tự động tham chiếu sang sheet đích mà không cần công thức phức tạp.

Làm sao dùng XLOOKUP để lấy dữ liệu từ file Google Sheets khác?

Cần kết hợp hàm IMPORTRANGE để nhập dữ liệu từ file khác về trước, sau đó dùng XLOOKUP tra cứu trên vùng dữ liệu đã import. XLOOKUP không thể tham chiếu trực tiếp đến file ngoài.

Tại sao XLOOKUP báo lỗi #N/A khi tra cứu từ sheet khác?

Thường do giá trị tìm kiếm không khớp định dạng (số vs văn bản), có khoảng trắng thừa, hoặc sheet đích chưa load xong dữ liệu IMPORTRANGE. Dùng TRIM và kiểm tra định dạng ô để khắc phục.

XLOOKUP có nhanh hơn VLOOKUP khi tra cứu dữ liệu lớn giữa nhiều sheet không?

Có, XLOOKUP tối ưu hơn vì không cần đếm cột như VLOOKUP, hỗ trợ tìm ngược, và ít lỗi hơn khi thêm/xóa cột ở sheet nguồn, phù hợp với dữ liệu lớn nhiều sheet liên kết.

Bạn muốn áp dụng ngay mà không phải tự xây từ đầu?

Khám phá các mẫu Google Sheets và phần mềm quản lý dựng sẵn cho doanh nghiệp Việt tại SheetStore Marketplace.

Chia sẻ bài viết:

Tuân Hoang

Tuân Hoang

Đội ngũ SheetStore

Google SheetsGoogle Apps ScriptCRMAutomationPhần mềm quản lý doanh nghiệp

Google Workspace Certified, 5+ years experience

Bạn thấy bài viết hữu ích?

Đăng ký nhận thông báo khi có bài viết mới.

Nhận thông báo khi có bài viết mới. Không spam, hứa luôn! 😊

Bình luận (0)

Vui lòng đăng nhập để tham gia thảo luận