Dynamic Arrays: UNIQUE, FILTER, SORT — Rumus yang Menumpah dan Hidup
Di Excel lama, satu sel hanya bisa memuat satu hasil. Kalau ingin daftar produk unik, Anda butuh Advanced Filter; kalau ingin menyaring, butuh criteria range; kalau ingin mengurutkan, butuh menu Sort. Semuanya statis — data baru datang, hasil tidak ikut berubah.
Excel 365/2021 mengubah aturan main itu dengan Dynamic Arrays: satu rumus, ditulis di satu sel, hasilnya menumpah (spill) ke sel-sel tetangga — dan hidup: data berubah, tumpahan ikut berubah. Non-destruktif, dinamis, dan bisa ditumpuk seperti LEGO.
☕ Data Kita: Transaksi Roastery (sama seperti artikel SUMIF)
🧾 A1:D8
| A (Tanggal) | B (Produk) | C (Qty) | D (Kepuasan) | |
|---|---|---|---|---|
| 1 | Tanggal | Produk | Qty | Kepuasan |
| 2 | 01-Sep | Robusta | 120 | 92 |
| 3 | 01-Sep | Arabika | 45 | 95 |
| 4 | 02-Sep | House Blend | 60 | 88 |
| 5 | 02-Sep | Robusta | 80 | 90 |
| 6 | 03-Sep | Arabika | 55 | 93 |
| 7 | 03-Sep | Liberika | 30 | 91 |
| 8 | 04-Sep | Robusta | 100 | 89 |
🛠️ UNIQUE: Daftar Unik yang Hidup
=UNIQUE(B2:B8) → menumpah: Robusta, Arabika, House Blend, Liberika
Ini adalah versi hidup dari Advanced Filter “Unique records only” — tambah baris transaksi “Liberika” baru, daftar ikut bertambah sendiri. Ingat latihan dataset sintetis 30 baris? =UNIQUE(G2:G31) langsung membongkar 13 nilai kota_tujuan — termasuk “0” yang mencurigakan.
🛠️ FILTER: Saringan Dinamis (Criteria Range yang Hidup)
=FILTER(A2:D8, B2:B8="Robusta") → menumpahkan 3 baris Robusta lengkap dengan tanggal, Qty, dan kepuasan.
Butuh lebih dari satu syarat? Kalikan kondisinya (AND): =FILTER(A2:D8, (B2:B8="Robusta")*(C2:C8>90)) → hanya baris 120 dan 100. Ini persis logika criteria range Advanced Filter — tapi hidup dan tidak menyentuh data asli.
🛠️ SORT: Mengurutkan Tanpa Menyentuh Data Asli
=SORT(FILTER(B2:C8, C2:C8>60), 2, -1) → saring Qty > 60, lalu urutkan menurun berdasarkan kolom ke-2: 120, 100, 80.
Perhatikan polanya: rumus ditumpuk — FILTER di dalam SORT. Inilah keindahan array dinamis: pipa kecil yang saling menyambung, persis filosofi Data Pipeline kita.
#SPILL!; kosongkan penghalangnya. (2) Excel 2016 ke bawah tidak punya array dinamis — untuk mereka, Advanced Filter tetap penyelamat. Itulah mengapa kita mempelajari keduanya.UNIQUE ↔ Advanced Filter “unique records” · FILTER ↔ criteria range · SORT ↔ menu Sort · XLOOKUP ↔ VLOOKUP. Versi kuno unggul di Excel lama dan data raksasa; versi modern unggul di dashboard yang hidup. Arsitek yang bijak menguasai keduanya.
🧠 Aha! Moment: Dari Menyaring menuju Membobot
Array dinamis membuat Anda lincah menyaring dan menata data. Tapi dunia bisnis juga butuh rumus yang membobot dan mengoptimasi: nilai akhir mahasiswa berbobot 30-30-40, atau kombinasi produksi meja-kursi yang memaksimalkan laba dalam batas jam kerja. Mesin untuk semua itu satu: SUMPRODUCT — ruh dari setiap model Solver.
📥 File Latihan
Buka kembali latihan-resik-sintetis.xlsx (30 baris fiktif) dan kerjakan: (1) =UNIQUE(E2:E31) — berapa agama berbeda yang muncul? (2) =FILTER(A2:G31, (E2:E31="ISLAM")*(G2:G31="jakarta timur")) — berapa baris tumpah? (3) bungkus dengan SORT agar urut alfabetis nama. Kunci: (1) 3 (ISLAM, KATOLIK, PROTESTAN), (2) 7 baris, (3) tambah argumen kolom 1 dan 1.