Loncat ke daftar isi utama

Bagaimana cara membuat kotak daftar berjenjang dinamis di Excel?

Anda mungkin tahu cara membuat daftar drop-down validasi berjenjang di Excel. Namun, bagaimana cara membuat kotak daftar berjenjang dinamis di Excel? Artikel ini memperkenalkan metode VBA untuk menurunkannya.

Buat kotak daftar berjenjang dinamis dengan kode VBA


Buat kotak daftar berjenjang dinamis dengan kode VBA

Seperti gambar di bawah ini yang ditunjukkan, Anda perlu membuat kotak daftar induk yang berisi nilai unik dari kolom Minuman, dan menampilkan semua nilai yang sesuai di kotak daftar kedua berdasarkan pilihan di kotak daftar induk. Kode VBA berikut membantu Anda mencapainya. Silakan lakukan sebagai berikut.

1. Pertama, Anda perlu mengekstrak semua nilai unik dari kolom Minuman. Pilih sel kosong, masukkan rumus array =IFERROR(INDEX($A$2:$A$11, MATCH(0,COUNTIF($J$1:J1, $A$2:$A$11), 0)),"") ke dalam Formula Bar, lalu tekan Ctrl + perubahan + Enter kunci. Lalu seret Isi Handle untuk mendapatkan semua nilai unik. Lihat tangkapan layar:

Note: Dalam rumusnya, $A$2:$A$11 adalah kisaran tempat Anda akan mengekstrak nilai unik. J1 adalah sel di atas tempat rumus Anda berada.

jenis: Jika formula terlalu sulit untuk diingat dan ditangani, maka Pilih Sel Duplikat & Unik kegunaan Kutools untuk Excel akan menjadi pilihan yang baik bagi Anda untuk mengekstrak semua nilai unik dari kolom dengan cepat.

Pilih kolom yang berisi nilai unik yang akan Anda ekstrak. Kemudian aktifkan utilitas dengan mengklik Kutools > Pilih > Pilih Sel Duplikat & Unik. di Pilih Sel Duplikat & Unik kotak dialog, pilih Semua unik (Termasuk duplikat pertama) pilihan dan klik OK tombol. Kemudian semua nilai unik dipilih di kolom. Harap salin dan tempel ke tempat baru. Lihat tangkapan layar:

Kutools untuk Excel: dengan lebih dari 200 add-in Excel yang praktis, gratis untuk dicoba tanpa batasan dalam 60 hari. Unduh dan uji coba gratis Sekarang!

2. Sisipkan dua kotak daftar secara terpisah dengan mengklik Pengembang > Menyisipkan > Kotak Daftar (Kontrol ActiveX). Lihat tangkapan layar:

3. Klik kanan kotak daftar induk dan pilih Properties dari menu konteks. Dalam Properties kotak dialog, ubah (Nama) lapangan ke Minum atau nama lain yang Anda butuhkan, masukkan rentang sel berisi nilai unik yang diekstrak ke dalam DaftarIsiRentang lapangan dan tutup dialog.

4. Ulangi langkah 3 untuk mengubah kotak daftar kedua (Nama) bidang ke Item di Properties kotak dialog.

5. Klik kanan tab lembar dan pilih Lihat kode dari menu klik kanan. Kemudian salin kode VBA di bawah ini ke jendela Kode. Lihat tangkapan layar:

Kode VBA: Buat kotak daftar berjenjang dinamis di Excel

Dim xPreStr As String
Private Sub Drink_Click()
'Update by Extendoffice 2018/06/04
    Dim I, xRows As Long
    Dim xRg As Range
    Dim xRegStr As String
    Application.ScreenUpdating = False
    xRegStr = Me.Drink.Text
    Set xRg = Range("A2:A11")
    xRows = xRg.Rows.Count
    If xRegStr <> xPreStr Then
    Me.Item.Clear
   'Me.OtherListBoxName.Clear
    Set xRg = xRg(1)
    For I = 1 To xRows
        If xRg.Offset(I - 1).Value = xRegStr Then
            Me.Item.AddItem xRg.Offset(I - 1, 1).Value
            'Me.OtherListBoxName.AddItem xRg.Offset(I - 1, 2).Value
        End If
    Next
    xPreStr = xRegStr
    End If
    Application.ScreenUpdating = True
End Sub

Catatan: Dalam kode Minuman dan Item adalah nama dari dua kotak daftar, ubah mereka menjadi nama Anda sendiri.

6. tekan lain + Q kunci untuk menutup Microsoft Visual Basic untuk Aplikasi jendela.

7. Matikan Mode Desain dengan mengklik Pengembang > Mode Desain.

Mulai sekarang, saat memilih jenis minuman apa pun seperti Kopi di kotak daftar induk, semua item kopi akan ditampilkan di kotak kedua. Pilih Teh atau Anggur hanya akan menampilkan item teh atau anggur di kotak daftar kedua. Lihat tangkapan layar:


Artikel terkait:

Alat Produktivitas Kantor Terbaik

🤖 Kutools AI Ajudan: Merevolusi analisis data berdasarkan: Eksekusi Cerdas   |  Hasilkan Kode  |  Buat Rumus Khusus  |  Analisis Data dan Hasilkan Grafik  |  Aktifkan Fungsi Kutools...
Fitur Populer: Temukan, Sorot, atau Identifikasi Duplikat   |  Hapus Baris Kosong   |  Gabungkan Kolom atau Sel tanpa Kehilangan Data   |   Putaran tanpa Formula ...
Pencarian Super: VLookup Beberapa Kriteria    VLookup Nilai Berganda  |   VLookup di Beberapa Lembar   |   Pencarian Fuzzy ....
Daftar Drop-down Lanjutan: Buat Daftar Drop Down dengan Cepat   |  Daftar Drop Down yang Bergantung   |  Multi-pilih Drop Down List ....
Manajer Kolom: Tambahkan Jumlah Kolom Tertentu  |  Pindahkan Kolom  |  Alihkan Status Visibilitas Kolom Tersembunyi  |  Bandingkan Rentang & Kolom ...
Fitur Unggulan: Fokus Kisi   |  Tampilan Desain   |   Bar Formula Besar    Manajer Buku Kerja & Lembar   |  Perpustakaan Sumberdaya (Teks otomatis)   |  Pemetik tanggal   |  Gabungkan Lembar Kerja   |  Enkripsi/Dekripsi Sel    Kirim Email berdasarkan Daftar   |  Filter Super   |   Filter Khusus (filter tebal/miring/coret...) ...
15 Perangkat Teratas12 Teks Tools (Tambahkan Teks, Hapus Karakter, ...)   |   50 + Grafik jenis (Gantt Chart, ...)   |   40+ Praktis Rumus (Hitung usia berdasarkan ulang tahun, ...)   |   19 Insersi Tools (Masukkan Kode QR, Sisipkan Gambar dari Jalur, ...)   |   12 Konversi Tools (Angka ke Kata, Konversi Mata Uang, ...)   |   7 Gabungkan & Pisahkan Tools (Lanjutan Gabungkan Baris, Pisahkan Sel, ...)   |   ... dan banyak lagi

Tingkatkan Keterampilan Excel Anda dengan Kutools for Excel, dan Rasakan Efisiensi yang Belum Pernah Ada Sebelumnya. Kutools for Excel Menawarkan Lebih dari 300 Fitur Lanjutan untuk Meningkatkan Produktivitas dan Menghemat Waktu.  Klik Di Sini untuk Mendapatkan Fitur yang Paling Anda Butuhkan...

Deskripsi Produk


Tab Office Membawa antarmuka Tab ke Office, dan Membuat Pekerjaan Anda Jauh Lebih Mudah

  • Aktifkan pengeditan dan pembacaan tab di Word, Excel, PowerPoint, Publisher, Access, Visio, dan Project.
  • Buka dan buat banyak dokumen di tab baru di jendela yang sama, bukan di jendela baru.
  • Meningkatkan produktivitas Anda sebesar 50%, dan mengurangi ratusan klik mouse untuk Anda setiap hari!
Comments (1)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi

What does "Me" refer to in the code and how will the code change if I have a MultiSelect list box?

Regards
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations