Bài 13: Hàm nâng cao và mảng trong Google Sheets
Tổng quan
Bài này giới thiệu nhóm hàm nâng cao và cách làm việc với mảng để xử lý phân tích dữ liệu phức tạp hơn.
Nhóm hàm nâng cao (phần 1)
-
INDEX(reference, [row], [column])Cách dùng: trả về giá trị theo vị trí hàng-cột trong vùng. Ví dụ
=INDEX(C2:C100, 5). -
MATCH(search_key, range, [search_type])Cách dùng: trả về vị trí của giá trị trong một dải. Ví dụ
=MATCH("SP001", A2:A100, 0). -
Kết hợp
INDEX+MATCHCách dùng: tra cứu linh hoạt khi cột trả kết quả nằm bên trái hoặc thay đổi vị trí. Ví dụ
=INDEX(C2:C100, MATCH("SP001", A2:A100, 0)).
Nhóm hàm nâng cao (phần 2)
-
ARRAYFORMULA(array_formula)Cách dùng: áp một công thức cho cả cột hoặc cả dải thay vì kéo công thức từng dòng. Ví dụ
=ARRAYFORMULA(IF(A2:A="", "", B2:B*C2:C)). -
INDIRECT(cell_reference_as_string, [is_A1_notation])Cách dùng: chuyển chuỗi văn bản thành tham chiếu ô/vùng động. Ví dụ
=INDIRECT("B"&E2)để tham chiếu ô B theo số dòng tại E2.
Nhóm hàm nâng cao (phần 3)
-
RAND()Cách dùng: tạo số ngẫu nhiên từ 0 đến nhỏ hơn 1. Ví dụ
=RAND(). -
RANDBETWEEN(low, high)Cách dùng: tạo số nguyên ngẫu nhiên trong khoảng chỉ định. Ví dụ
=RANDBETWEEN(1, 100). -
RANDARRAY([rows], [columns], [min], [max], [whole_number])Cách dùng: tạo cả ma trận số ngẫu nhiên. Ví dụ
=RANDARRAY(5, 3, 1, 100, TRUE). -
SEQUENCE(rows, [columns], [start], [step])Cách dùng: tạo dãy số tuần tự theo hàng/cột. Ví dụ
=SEQUENCE(12, 1, 1, 1).
Lưu ý khi dùng INDEX và MATCH
- Vùng
INDEXnên là vùng “trả kết quả” (answer area). - Không cần gộp vùng lookup vào vùng INDEX nếu không cần.
- Cách tách này giúp công thức rõ hơn và dễ bảo trì.
Mảng trong Google Sheets là gì
- Mảng là một bảng gồm nhiều giá trị.
- Một số hàm tự trả về nhiều giá trị (ví dụ
FILTER). - Hàm trả một giá trị vẫn có thể chạy kiểu mảng bằng:
- bọc
ARRAYFORMULA(...) - hoặc dùng
Ctrl + Shift + Enterkhi xác nhận công thức.
- bọc
Tự tạo mảng thủ công
- Dùng ngoặc nhọn
{}để tạo mảng. - Dấu phẩy
,tách phần tử theo cột. - Dấu chấm phẩy
;tách phần tử theo hàng. - Ở vùng dùng dấu phẩy làm thập phân, ký hiệu phân tách có thể thay đổi theo locale.