Kamus VBA

Kamus VBA Excel

Dengan menggunakan Kamus VBA kita dapat mengumpulkan semua jenis data dalam kamus untuk mendapatkan akses ke semua item dengan satu pemboleh ubah. Kita boleh menggunakan kamus untuk membuat koleksi kombinasi nilai-kunci. Setelah objek dihubungkan dengan kunci, kemudian, kita dapat memanggilnya dengan hanya menggunakan nama kunci.

Kamus VBA sangat sukar untuk masuk ke dalam tetapi kami akan mencuba tahap terbaik untuk memudahkan anda memahami. Kita dapat membandingkan Kamus dan Koleksi pada skala yang sama tetapi beberapa kamus VBA menawarkan beberapa fungsi yang tidak tersedia dengan objek Koleksi VBA.

Bekerja dengan Kamus VBA

Untuk bekerjasama dengan Kamus VBA, perkara pertama yang perlu kita lakukan ialah menetapkan rujukan objek ke 'Microsoft Scripting Runtime'.

Untuk menetapkan rujukan untuk mengikuti langkah-langkah di bawah.

Langkah 1: Pergi ke Alat> Rujukan.

Langkah 2: Tatal ke bawah dan pilih 'Microsoft Scripting Runtime' kemudian klik ok.

Sekarang kita boleh mengakses Kamus VBA dengan Pustaka Skrip.

Anda boleh memuat turun Templat Excel Kamus VBA ini di sini - Templat Excel Kamus VBA

Buat Kamus Contoh dengan Kod VBA

Setelah menetapkan rujukan ke 'Microsoft Scripting Runtime', kita perlu membuat contoh Kamus VBA. Pertama, nyatakan pemboleh ubah sebagai Scripting.Dictionary

Kod:

 Sub Dict_Contoh1 () Dim Dict Sebagai Skrip.Dictionary Akhir Sub

Sekarang pemboleh ubah "Dict" adalah pemboleh ubah objek. Untuk pemboleh ubah objek, kita perlu menetapkan rujukan objek dengan menggunakan kata "Baru".

Tetapkan Dict = Skrip Baru.Dictionary

Sekarang kita dapat mengakses semua sifat dan kaedah kamus.

Catatan: Semua perkataan yang berwarna hijau adalah Kaedah dan yang lain adalah Properties.

Sekarang nyatakan satu pemboleh ubah sebagai DictResult.

Dim DictResult Sebagai Varian

Sekarang menggunakan pemboleh ubah "Dict" kita akan membuat kunci baru.

Kunci adalah apa kata yang kita tambah. Mari tambahkan nama Telefon bimbit sebagai "Redmi".

Item tidak lain adalah definisi perkataan ( kunci ) yang telah kami tambahkan. Definisi telefon ini adalah harganya jadi saya akan menambahkan harganya menjadi 15000.

Sekarang untuk pemboleh ubah lain "DictResult", kami akan menambahkan kata kunci menggunakan pemboleh ubah "Dict".

Kunci adalah perkataan yang telah kita buat pada langkah sebelumnya iaitu nama telefon.

Sekarang pemboleh ubah "DictResult" mempunyai item kunci yang telah kami tambahkan. Sekarang tunjukkan hasil pemboleh ubah di kotak mesej VBA.

Kod:

 Sub Dict_Example1 () Dim Dict As Scripting.Dictionary Set Dict = New Scripting.Dictionary Dim DictResult As Variant Dict.Add Key: = "Redmi", Item: = 15000 DictResult = Dict ("Redmi") MsgBox DictResult End Sub 

Sekarang jalankan kod secara manual atau gunakan kunci F5 dan kotak mesej akan menunjukkan kepada anda harga ( item ) telefon ( kunci ) yang telah kami tambahkan menggunakan "Dict".

Memahami KEY & ITEM

Sekiranya anda belum memahami KUNCI & ITEM, izinkan saya menerangkan kepada anda dengan contoh yang mudah. Bayangkan kamus dunia sebenar, dengan kamus ini kita mempunyai perkataan (kunci) dan makna kata-kata itu (item). Begitu juga, kata-kata adalah Kunci, dan definisi atau makna adalah Item.

Sekarang, lihat satu lagi contoh Kamus. Andaikan anda mencari nombor telefon orang tertentu. Bagaimana anda mencari?

Jelas sekali, dengan menggunakan nama yang telah kita gunakan semasa menyimpan nombor telefon. Di sini kita mempunyai dua perkara satu adalah Nama Orang & yang kedua ialah Nombor Telefon.

Nama Orang itu adalah Kunci.

The Nombor Telefon adalah Item.

Sekiranya anda mahukan contoh Excel, kami boleh memberikan VLOOKUP sebagai contoh. Kami menggunakan formula untuk mencari nilai berdasarkan NILAI LOOKUP (Kunci). Hasil yang dikembalikan oleh fungsi VLOOKUP disebut Item.

Periksa Sama ada Telefon Bimbit ada atau tidak

Bayangkan anda memberikan borang pengguna kepada pelanggan anda untuk memeriksa harga telefon bimbit dengan kotak input sederhana. Di bawah kod Excel VBA akan menunjukkan Kotak Input di hadapan pengguna dan mereka perlu memasukkan jenama telefon yang mereka cari, jika nama jenama ada di dalam kamus, ia akan menunjukkan harga telefon masing-masing atau sebaliknya paparkan mesej sebagai "Telefon yang Anda Cari Tidak Ada di Perpustakaan".

Kod:

 Sub Dict_Example2 () Dim PhoneDict As Scripting.Dictionary Dim DictResult As Variant Set PhoneDict = New Scripting.Dictionary PhoneDict.Add Key: = "Redmi", Item: = 15000 PhoneDict.Add Key: = "Samsung", Item: = 25000 PhoneDict .Add Key: = "Oppo", Item: = 20000 PhoneDict.Add Key: = "VIVO", Item: = 21000 PhoneDict.Add Key: = "Jio", Item: = 2500 DictResult = Application.InputBox (Prompt: = "Sila Masukkan Nama Telefon") Jika PhoneDict.Exists (DictResult) Kemudian MsgBox "Harga Telefon" & DictResult & "adalah:" & PhoneDict (DictResult) Lain-lain MsgBox "Telefon yang Anda Cari Tidak Ada di Perpustakaan "Tamat Jika Akhir Sub 

Jalankan kod ini menggunakan kekunci F5 atau secara manual dan lihat hasilnya.