ARRAYFORMULA Google Sheets: Satu Rumus buat Seluruh Kolom
TL;DR
ARRAYFORMULA adalah fungsi Google Sheets yang bikin satu rumus jalan ke banyak baris sekaligus tanpa perlu di-copy ke bawah. Tulis di baris pertama, misal =ARRAYFORMULA(B2:B*C2:C), dan hasilnya otomatis ngisi seluruh kolom termasuk baris baru yang masuk belakangan. Fungsi ini bikin file lebih enteng dan rumus lebih gampang dibenerin karena cuma ada satu sumber.
ARRAYFORMULA adalah fungsi Google Sheets yang bikin satu rumus jalan ke banyak baris sekaligus, tanpa perlu di-copy ke bawah.
Jadi kalau selama ini kamu nulis rumus di sel D2 terus tarik ke bawah sampai baris 5.000 — dan ngulang tiap ada data baru masuk — kerjaan itu bisa hilang.
Di bawah ini cara pakainya, kombinasi yang paling kepakai di kerjaan sehari-hari, dan error yang bikin orang nyerah di percobaan pertama.
Apa itu ARRAYFORMULA di Google Sheets?
ARRAYFORMULA adalah fungsi yang bikin rumus kamu ngeluarin banyak hasil sekaligus dari satu sel. Kamu tulis sekali di baris pertama, hasilnya nyebar ke bawah otomatis, termasuk ke baris yang baru diisi besok.
Sintaksnya sederhana:
=ARRAYFORMULA(rumus_dengan_range)
Kuncinya ada di kata range. Rumus biasa kerja per sel, ARRAYFORMULA kerja per kolom.
Bandingin dua ini:
Rumus biasa (di D2, harus di-drag ke bawah):
=B2*C2
ARRAYFORMULA (cukup di D2, selesai):
=ARRAYFORMULA(B2:B*C2:C)
Yang kedua ngisi kolom D sampai ke baris terakhir yang ada isinya. Nambah data di baris 5.001? Langsung kehitung.
Gimana cara nulis ARRAYFORMULA pertama kamu?
Anggap kamu punya data penjualan kayak gini:
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Produk | Qty | Harga | Total |
| 2 | Beras 5kg | 3 | 68.000 | ? |
| 3 | Minyak 2L | 2 | 38.500 | ? |
| 4 | Gula 1kg | 5 | 17.000 | ? |
Langkahnya:
- Klik sel D2 (baris pertama data, bukan header).
- Ketik:
=ARRAYFORMULA(B2:B*C2:C) - Tekan Enter.
Kolom D langsung keisi: 204.000, 77.000, 85.000. Dan tiap kamu nambah baris baru, totalnya muncul sendiri.
Kalau kamu males ngetik ARRAYFORMULA(, tulis rumusnya dulu terus tekan Ctrl+Shift+Enter. Google Sheets bakal bungkus otomatis.
Kenapa hasilnya penuh angka 0 sampai baris 1.000?
Ini masalah pertama yang bikin orang kesel. Range terbuka B2:B nyakup semua baris kosong di bawah data, jadi hasilnya 0 di mana-mana.
Solusinya bungkus pakai IF:
=ARRAYFORMULA(IF(B2:B="", "", B2:B*C2:C))
Artinya: kalau kolom B kosong, biarin hasilnya kosong. Kalau ada isinya, baru dikali.
Pola IF(range="", "", ...) ini bakal kamu pakai di hampir semua ARRAYFORMULA. Hafalin.
Sekalian kalau mau ikutin header-nya juga:
=ARRAYFORMULA(IF(ROW(B:B)=1, "Total", IF(B:B="", "", B:B*C:C)))
Rumus ini ditaruh di D1. Baris 1 dapat teks "Total", baris sisanya dapat hasil hitungan. Satu rumus buat satu kolom penuh, header sekalian.
Kombinasi ARRAYFORMULA yang paling sering kepakai
1. ARRAYFORMULA + IF buat kategori
Mau kasih label "Besar" kalau total di atas 100 ribu:
=ARRAYFORMULA(IF(D2:D="", "", IF(D2:D>100000, "Besar", "Kecil")))
2. ARRAYFORMULA + VLOOKUP buat isi kolom dari sheet lain
Ini yang bikin banyak orang jatuh cinta. Satu VLOOKUP buat seluruh kolom:
=ARRAYFORMULA(IFERROR(VLOOKUP(A2:A, produk!A:C, 3, FALSE), ""))
IFERROR di luar penting — kalau ada produk yang nggak ketemu, selnya dibiarin kosong bukan penuh #N/A. Kalau VLOOKUP masih bikin bingung, cek dulu panduan fungsi VLOOKUP.
3. ARRAYFORMULA + TEXT buat format tanggal
=ARRAYFORMULA(IF(A2:A="", "", TEXT(A2:A, "mmmm yyyy")))
Ngubah kolom tanggal jadi nama bulan, buat bahan pivot table.
4. ARRAYFORMULA + SPLIT buat pecah teks
=ARRAYFORMULA(IF(A2:A="", "", REGEXEXTRACT(A2:A, "^(\w+)")))
Ngambil kata pertama dari tiap sel. Berguna buat misahin "Beras 5kg" jadi "Beras".
Fungsi mana yang nggak jalan di ARRAYFORMULA?
Nggak semua fungsi mau diajak kerja sama. Yang sering bikin gagal:
| Fungsi | Jalan di ARRAYFORMULA? | Gantinya |
|---|---|---|
| SUMIF / COUNTIF | Jalan, tapi kriterianya harus range | Pakai SUMIF(range, kriteria_range, sum_range) |
| SUMIFS | Nggak | Pakai SUMPRODUCT atau QUERY |
| CONCATENATE | Nggak | Pakai operator & |
| JOIN | Nggak | Pakai TEXTJOIN per baris |
| VLOOKUP | Jalan | — |
| IF / IFS | Jalan | — |
Kalau fungsi kamu masuk kolom "Nggak", pertimbangin pindah ke fungsi QUERY yang emang didesain buat ngolah tabel sekaligus.
Contoh kasus: laporan toko_berkah
Aku pakai dataset toko_berkah — file penjualan UMKM dengan 6.240 baris transaksi selama 2025, dicatat manual di Google Sheets.
Kondisi awalnya: 4 kolom hitungan (total, margin, kategori nilai, nama bulan), masing-masing pakai rumus yang di-drag sampai baris 6.240. Totalnya 24.960 rumus hidup di satu file.
File-nya butuh 4-6 detik tiap kali dibuka, dan tiap nambah transaksi harus drag ulang 4 kolom.
Habis diganti 4 ARRAYFORMULA:
D2: =ARRAYFORMULA(IF(B2:B="", "", B2:B*C2:C))
E2: =ARRAYFORMULA(IF(D2:D="", "", D2:D - (B2:B * VLOOKUP(A2:A, hpp!A:B, 2, FALSE))))
F2: =ARRAYFORMULA(IF(D2:D="", "", IF(D2:D>100000, "Besar", "Kecil")))
G2: =ARRAYFORMULA(IF(A2:A="", "", TEXT(tanggal2:tanggal, "mmmm yyyy")))
Hasilnya:
- 24.960 rumus turun jadi 4.
- Waktu buka file turun dari 4-6 detik ke sekitar 1 detik.
- Transaksi baru langsung kehitung, nggak perlu drag apa-apa lagi.
Yang paling kerasa bukan kecepatannya sih, tapi rumusnya jadi gampang dibenerin. Salah margin? Ganti satu sel, beres. Sebelumnya harus drag ulang 6.240 baris dan berdoa nggak ada yang keloncat.
Kesalahan umum pakai ARRAYFORMULA
Pakai referensi sel tunggal. =ARRAYFORMULA(B2*C2) tetap ngasih satu baris doang. Harus range: B2:B*C2:C.
Nulis di sel yang bawahnya udah ada isinya. Google Sheets bakal ngeluh "Array result was not expanded because it would overwrite data". Kosongin dulu kolom di bawahnya.
Lupa IFERROR di VLOOKUP. Satu nilai nggak ketemu, kolom kamu penuh #N/A dan chart-nya rusak.
Pakai range terbuka di 20 kolom sekaligus. Ini yang bikin file lemot, bukan ARRAYFORMULA-nya. Kalau datamu lewat 50 ribu baris, batasi rangenya jadi B2:B60000.
Numpuk ARRAYFORMULA di dalam ARRAYFORMULA. Nggak perlu. Satu pembungkus di paling luar udah cukup buat semua fungsi di dalamnya.
FAQ
Apa bedanya ARRAYFORMULA sama drag rumus ke bawah?
Drag rumus bikin satu rumus terpisah di tiap baris. Kalau ada 5.000 baris, ada 5.000 rumus yang harus dihitung, dan file jadi berat. ARRAYFORMULA cuma satu rumus yang hasilnya nyebar ke bawah. Baris baru yang masuk otomatis kehitung tanpa kamu drag ulang.
Kenapa ARRAYFORMULA saya cuma keluar satu baris?
Biasanya karena kamu masih pakai referensi sel tunggal, bukan range. =ARRAYFORMULA(B2*C2) tetap satu baris. Yang bener =ARRAYFORMULA(B2:B*C2:C). Penyebab lain: fungsi di dalamnya nggak mendukung array, kayak SUMIFS.
Apakah ARRAYFORMULA ada di Excel?
Nggak ada fungsi bernama ARRAYFORMULA di Excel. Tapi Excel 365 punya dynamic array yang jalannya mirip: rumus ditulis sekali, hasilnya spill otomatis ke bawah. Detailnya bisa kamu baca di dokumentasi resmi Google Sheets buat perbandingan.
Gimana cara bikin ARRAYFORMULA nggak ngisi baris kosong?
Bungkus pakai IF yang ngecek kolom kuncinya: =ARRAYFORMULA(IF(B2:B="", "", B2:B*C2:C)). Tanpa ini, kolom kamu penuh angka 0 sampai baris 1.000, dan itu bikin chart sama pivot table kacau.
ARRAYFORMULA bikin Google Sheets lemot nggak?
Justru sebaliknya kalau dipakai bener. Satu ARRAYFORMULA jauh lebih ringan dari 5.000 rumus terpisah. Yang bikin lemot itu kalau kamu numpuk VLOOKUP ke sheet gede di dalam range terbuka. Batasi rangenya kalau data udah lewat 50 ribu baris.
Langkah berikutnya
Dua hal yang perlu nempel:
- ARRAYFORMULA butuh range, bukan sel tunggal. Ini penyebab 80% kegagalan percobaan pertama.
- Selalu bungkus pakai
IF(range="", "", ...)biar baris kosong nggak keisi 0.
Coba sekarang: buka satu file kerjaan kamu yang rumusnya di-drag ke bawah, ganti satu kolom jadi ARRAYFORMULA. Lima menit, dan kamu bakal ngerasain bedanya.
Mau latihan rumus Sheets lain? Mampir ke panduan fungsi QUERY Google Sheets — pasangan paling pas buat ARRAYFORMULA.
Mau praktek langsung? Mulai latihan SQL gratis
Latihan interaktif, langsung di browser.
Artikel Terkait
Template Laporan Penjualan Excel: Struktur yang Dipakai Analis
Template laporan penjualan yang bener cuma butuh 3 sheet. Yang bikin laporan orang rusak biasanya karena data mentah dan hasil dicampur di satu tempat.
Cara Menghubungkan Google Sheets ke Looker Studio
Nyambungin Google Sheets ke Looker Studio cuma butuh 5 menit. Yang bikin lama itu datanya belum rapi. Ini urutan yang bener.
Cara Share Google Sheets dengan Aman: Permission & Protected Range
Panduan step by step share Google Sheets tanpa bikin rumus kehapus atau data gaji bocor — dari level permission, protected range, sampai audit siapa yang buka.