Membuat Dynamic Search dengan XLOOKUP di Excel

★★★★★
4.9 (156 ulasan)
DC
162
Tutorial
7.1k
Pengikut
4.9★
Rating

David Chen - Excel Dashboard Specialist

Microsoft Certified Excel Expert | Data Analyst
David Chen adalah seorang ahli Excel dengan sertifikasi Microsoft dan pengalaman lebih dari 10 tahun dalam analisis data dan pembuatan dashboard. Dia telah membantu ribuan profesional meningkatkan kemampuan Excel mereka melalui tutorial dan kursus online.
Excel Expert Data Analysis Dashboard Design

Fungsi XLOOKUP di Excel tidak hanya untuk pencarian sederhana, tetapi juga dapat digunakan untuk membuat sistem pencarian dinamis yang merespons input pengguna secara real-time. Dalam tutorial ini, Anda akan mempelajari cara menggunakan XLOOKUP untuk membuat pencarian dinamis, filter data otomatis, dan dashboard interaktif.

Dengan menggabungkan kekuatan XLOOKUP dengan fungsi Excel modern lainnya seperti FILTER dan SORT, Anda dapat membuat spreadsheet yang lebih interaktif, user-friendly, dan powerful. Mari kita pelajari teknik-teknik praktisnya!

1. Konsep Dynamic Search dengan XLOOKUP

Dynamic Search adalah sistem pencarian yang memberikan hasil secara real-time saat pengguna mengetik. XLOOKUP sangat cocok untuk ini karena kemampuannya mengembalikan array dinamis dan mendukung wildcard.

Real-time Response

⚡

Hasil pencarian langsung berubah saat pengguna mengetik di sel input, tanpa perlu menekan Enter.

Tip: Gunakan referensi sel langsung sebagai lookup_value dalam XLOOKUP.

Wildcard Support

🔍

XLOOKUP mendukung wildcard (* dan ?) untuk pencarian partial atau mengandung teks tertentu.

Tip: Gunakan match_mode 2 untuk mengaktifkan pencarian wildcard.

Array Dinamis

📊

XLOOKUP dapat mengembalikan array dinamis yang otomatis menyesuaikan ukurannya.

Tip: Kombinasikan dengan SORT dan FILTER untuk hasil yang lebih terstruktur.

2. Membuat Pencarian Dasar dengan XLOOKUP

Mari mulai dengan membuat sistem pencarian dasar yang mencari data berdasarkan input pengguna.

Struktur Data Contoh:

// Tabel: TabelKaryawan
// | ID | Nama | Departemen | Posisi | Gaji |
// |----|------|------------|--------|------|
// | K001 | Andi | IT | Developer | 8500000 |
// | K002 | Budi | Marketing | Manager | 12000000 |
// | K003 | Citra | HR | Specialist | 7500000 |

Formula Pencarian Dasar:

// Pencarian berdasarkan ID
=XLOOKUP(F2, TabelKaryawan[ID], TabelKaryawan[Nama])

// Pencarian dengan multiple return
=XLOOKUP(F2, TabelKaryawan[ID], TabelKaryawan[[Nama]:[Gaji]])
// Mengembalikan array dengan semua informasi karyawan

// Dengan penanganan error
=XLOOKUP(F2, TabelKaryawan[ID], TabelKaryawan[Nama], "Data tidak ditemukan")
💡 Tips: Gunakan tabel terstruktur untuk memastikan referensi tetap valid meskipun data bertambah atau berubah.

3. Pencarian Partial dengan Wildcard

XLOOKUP mendukung wildcard untuk pencarian yang lebih fleksibel, cocok untuk dynamic search.

// Pencarian mengandung teks
=XLOOKUP("*"&F2&"*", TabelKaryawan[Nama], TabelKaryawan[[Nama]:[Gaji]], , 2)
// Mencari nama yang mengandung teks di F2

// Pencarian diawali dengan teks
=XLOOKUP(F2&"*", TabelKaryawan[Nama], TabelKaryawan[Departemen], , 2)
// Mencari nama yang diawali dengan teks di F2

// Pencarian diakhiri dengan teks
=XLOOKUP("*"&F2, TabelKaryawan[Nama], TabelKaryawan[Posisi], , 2)
// Mencari nama yang diakhiri dengan teks di F2

Implementasi Dynamic Search:

// Dynamic search real-time
=IF(F2="", "", XLOOKUP("*"&F2&"*", TabelKaryawan[Nama], TabelKaryawan[[Nama]:[Gaji]], "Tidak ditemukan", 2))
// Menampilkan hasil hanya jika F2 tidak kosong

Teknik Dynamic Search dengan XLOOKUP

🔍
Pencarian Real-time
Hasil langsung berubah saat mengetik
⭐
Wildcard Search
Pencarian partial dengan * dan ?
📋
Multiple Results
Kombinasi dengan FILTER

4. Kombinasi XLOOKUP dengan FILTER

Untuk menampilkan multiple results yang sesuai dengan kriteria pencarian, kombinasikan XLOOKUP dengan FILTER.

// Filter semua karyawan yang namanya mengandung teks
=FILTER(TabelKaryawan, ISNUMBER(SEARCH(F2, TabelKaryawan[Nama])))

// Filter dengan multiple kondisi
=FILTER(TabelKaryawan,
    (ISNUMBER(SEARCH(F2, TabelKaryawan[Nama])))*(TabelKaryawan[Departemen]=G2))
// Mencari nama mengandung F2 DAN departemen = G2

// Filter dan sort hasil
=SORT(FILTER(TabelKaryawan, ISNUMBER(SEARCH(F2, TabelKaryawan[Nama]))), 4, -1)
// Mengurutkan hasil berdasarkan gaji (kolom 4) descending

Advanced Dynamic Search:

// Dynamic search dengan filter dan handling kosong
=IF(F2="", TabelKaryawan,
    SORT(FILTER(TabelKaryawan, ISNUMBER(SEARCH(F2, TabelKaryawan[Nama]))), 2, 1))
// Jika F2 kosong, tampilkan semua data,搩戙 filter dan sort by nama

5. Membuat Dropdown Pencarian Dinamis

Buat dropdown yang menampilkan hasil pencarian dinamis menggunakan Data Validation.

Langkah-langkah:

  1. Siapkan Range Hasil: Buat range yang menampilkan hasil pencarian dinamis
  2. Buat Data Validation: Gunakan List yang merujuk ke range hasil
  3. Implementasi Formula: Gunakan kombinasi fungsi untuk dynamic dropdown
// Formula untuk range hasil (misalnya di H2:H100)
=IFERROR(INDEX(FILTER(TabelKaryawan[Nama], ISNUMBER(SEARCH(F2, TabelKaryawan[Nama]))), ROW(H1)), "")

// Data Validation di sel G2
// Allow: List
// Source: =$H$2:$H$100
📝 Catatan: Pastikan range hasil cukup besar untuk menampung semua kemungkinan hasil pencarian.

6. Multiple Criteria Search

Untuk pencarian yang lebih kompleks, gunakan multiple criteria dengan XLOOKUP dan FILTER.

// Pencarian dengan 2 kriteria
=FILTER(TabelKaryawan,
    (ISNUMBER(SEARCH(F2, TabelKaryawan[Nama])))*(TabelKaryawan[Departemen]=G2)*(TabelKaryawan[Gaji]>=H2))

// Pencarian dengan OR condition
=FILTER(TabelKaryawan,
    (ISNUMBER(SEARCH(F2, TabelKaryawan[Nama]))+(TabelKaryawan[Departemen]=G2))
// + operator untuk OR condition

// Dynamic multiple criteria
=LET(criteria, (ISNUMBER(SEARCH(F2, TabelKaryawan[Nama])))*(IF(G2="",1,TabelKaryawan[Departemen]=G2)),
    FILTER(TabelKaryawan, criteria))
// Menggunakan LET untuk formula yang lebih efisien

7. Dashboard Pencarian Interaktif

Buat dashboard lengkap dengan berbagai jenis pencarian dan visualisasi data.

Komponen Dashboard:

Komponen Fungsi Formula Contoh
Search Box Input pencarian utama Sel F2 (input manual)
Results Table Menampilkan hasil pencarian =FILTER(TabelKaryawan, ISNUMBER(SEARCH(F2, TabelKaryawan[Nama])))
Summary Stats Statistik hasil pencarian =COUNTA(UNIQUE(FILTER(TabelKaryawan[ID], ISNUMBER(SEARCH(F2, TabelKaryawan[Nama])))))
Department Filter Filter berdasarkan departemen Dropdown di G2

Formula Dashboard Lengkap:

// Hasil pencarian utama
=LET(searchTerm, F2, deptFilter, G2,
    nameMatch, ISNUMBER(SEARCH(searchTerm, TabelKaryawan[Nama])),
    deptMatch, IF(deptFilter="", 1, TabelKaryawan[Departemen]=deptFilter),
    SORT(FILTER(TabelKaryawan, nameMatch*deptMatch), 2, 1))

// Jumlah hasil
=ROWS(FILTER(TabelKaryawan[ID], ISNUMBER(SEARCH(F2, TabelKaryawan[Nama]))))

// Rata-rata gaji hasil pencarian
=AVERAGE(FILTER(TabelKaryawan[Gaji], ISNUMBER(SEARCH(F2, TabelKaryawan[Nama]))))

8. Download Template Praktik

Untuk membantu Anda mempraktikkan teknik dynamic search dengan XLOOKUP, kami menyediakan template gratis yang berisi:

  • Contoh tabel karyawan dengan data lengkap
  • Berbagai jenis sistem pencarian dinamis
  • Dashboard pencarian interaktif lengkap
  • Contoh multiple criteria search
  • Teknik advanced dengan LET dan LAMBDA

Yang Anda Dapatkan dalam Template

📊 Data Contoh

Tabel karyawan dengan 50+ records untuk praktik

🔍 Basic Search

Sistem pencarian dasar dengan XLOOKUP

🔄 Dynamic Filter

Pencarian real-time dengan FILTER

📋 Dashboard Interaktif

Dashboard lengkap dengan multiple criteria

đŸ“„ Download Template Dynamic Search XLOOKUP

Pertanyaan yang Sering Diajukan (FAQ)

Bagaimana cara membuat sistem pencarian dinamis dengan XLOOKUP? +

Gunakan kombinasi XLOOKUP dengan FILTER dan fungsi lainnya untuk membuat sistem pencarian yang merespons input secara real-time.

Apakah XLOOKUP lebih baik dari VLOOKUP untuk pencarian dinamis? +

Ya, XLOOKUP lebih fleksibel karena dapat mengembalikan array dinamis, mendukung wildcard, dan memiliki penanganan error yang lebih baik.

Bagaimana melakukan pencarian partial dengan XLOOKUP? +

Gunakan wildcard (*) dalam parameter lookup_value dengan match_mode 2 untuk pencarian partial atau mengandung teks tertentu.

Bagaimana membuat dropdown pencarian yang dinamis? +

Kombinasikan XLOOKUP dengan Data Validation untuk membuat dropdown yang menampilkan hasil pencarian secara dinamis.