Jenis VBA

Jenis adalah pernyataan dalam VBA yang digunakan untuk menentukan pemboleh ubah yang serupa dengan fungsi DIM, ia digunakan pada tahap yang ditentukan pengguna di mana kita mempunyai satu atau lebih nilai dalam pemboleh ubah, terdapat dua tatanama untuk pernyataan jenis yang bersifat umum atau peribadi namun ini adalah pilihan untuk digunakan, tetapi nama pemboleh ubah dan nama elemen diperlukan.

Apakah Pernyataan Jenis di Excel VBA?

Pernyataan Jenis VBA digunakan untuk menentukan pemboleh ubah di bawah satu nama kumpulan tunggal dengan jenis data berbeza yang diberikan kepada setiap pemboleh ubah. Ini membantu kita mengumpulkan beberapa pemboleh ubah di bawah satu objek untuk menggunakannya di bawah nama jenis yang ditentukan.

Dengan menyatakan pernyataan Jenis, kita dapat mengelakkan penggunaan modul Kelas di VBA. Ia tidak memerlukan modul rentetan kerana dapat dimasukkan ke dalam modul yang sudah ada yang dapat menjimatkan ruang kita.

Dalam salah satu artikel sebelumnya, kami telah membincangkan "ENBA VBA" untuk mengumpulkan semua pemboleh ubah di bawah nama kumpulan tunggal.

Sebagai contoh, jika anda mempunyai nama kumpulan yang disebut "Mobiles" kami mempunyai ahli kumpulan seperti "Redmi, Oppo, Vivo, Samsung, LG dan lain-lain." Jadi pernyataan Enum kita dapat mengumpulkan bersama dengan nilai masing-masing.

Enum Mobiles

Redmi = 12000

Oppo = 18000

Vivo = 18000

Samsung = 25000

LG = 15000

Akhir Enum

Seperti ini, kami telah membuat penghitungan dalam artikel itu. Masalah dengan pernyataan Enum kerana hanya boleh memuat jenis data yang PANJANG. Untuk mengelompokkan pemboleh ubah dengan jenis data yang berbeza, kita dapat menggunakan "Pernyataan JENIS VBA". Dalam artikel ini, kami akan menunjukkan kepada anda cara membina pernyataan Jenis di VBA. Teruskan membaca…

Sintaks

Sebelum anda menyatakan pemboleh ubah dengan menggunakan pernyataan Jenis, lihat sintaksnya:

Jenis Kumpulan Nama             [Pemboleh ubah 1] sebagai Jenis Data Pembolehubah             [Pemboleh ubah 2] sebagai Jenis Data Pembolehubah             [Pemboleh ubah 3] sebagai Jenis Data             Pembolehubah [Pembolehubah 4] sebagai Jenis Data             Pembolehubah [Pemboleh ubah 5] sebagai Jenis Akhir Jenis Jenis Data Berubah

Jenis pernyataan ini dapat dinyatakan dalam modul dan juga di bahagian atas modul seperti Pembolehubah Global kami di VBA.

Jenis VBA dapat menahan pemboleh ubah objek, ia dapat menahan tatasusunan. Namun, itu tidak boleh mengandungi prosedur, fungsi.

Taipkan Pernyataan Contoh dalam VBA

Anda boleh memuat turun Templat Pernyataan Jenis VBA ini di sini - Templat Pernyataan Jenis VBA

Ok, mari mulakan proses menyatakan pemboleh ubah dengan pernyataan Jenis. Kami akan melihat contoh yang sama untuk menyatakan jenama Mudah Alih seperti cara kami menggunakan VBA Enum.

Langkah 1: Di bahagian atas modul mulakan perkataan "Type" dan beri nama kepada Type of group.

Kod:

 Taip Jenis Berakhir MobileBrands 

Langkah 2: Dalam Jenama Mudah Alih apa perkara yang biasa kita lihat. Kami melihat Nama terlebih dahulu sehingga menyatakan pemboleh ubah sebagai Nama sebagai Rentetan.

Kod:

 Taipkan Nama Jenama Bergerak Sebagai Jenis Akhir Tali 

Langkah 3: Selepas namanya, kami memeriksa tarikh Pelancaran. Menyatakan pemboleh ubah sebagai LaunchDate sebagai Tarikh.

Kod:

 Taip Nama Jenama Mudah Alih Sebagai Pelancaran Rentetan Tarikh Sebagai Jenis Tarikh Akhir 

Langkah 4: Perkara seterusnya ialah kita memeriksa kapasiti Penyimpanan. Untuk menyatakan pemboleh ubah sebagai Storage sebagai Integer.

Kod:

 Taip Nama Jenama Mudah Alih Sebagai Pelancaran Rentetan Tarikh Sebagai Penyimpanan Tarikh Sebagai Jenis Akhir Integer 

Langkah 5: Perkara seterusnya ialah kita memeriksa kapasiti RAM.

Kod:

 Taipkan Nama MobileBrands Sebagai String LaunchDate Sebagai Date Storage Sebagai RAM Sebagai Integer End Type 

Langkah 6: Akhirnya kami memeriksa Harga.

Kod:

 Taip Nama Jenama Mudah Alih Sebagai Pelancaran Rentetan Tarikh Sebagai Penyimpanan Tarikh Sebagai RAM Integer Sebagai Harga Integer Sebagai Jenis Akhir 

Sekarang dalam Sub Prosedur dengan menyatakan pemboleh ubah sebagai Type Type iaitu MobileBrands kita dapat mengakses semua jenis data pemboleh ubah ini.

Langkah 7: Buat subproses.

Kod:

 Sub Jenis_Contoh1 () Sub Akhir 

Langkah 8: Sekarang nyatakan pemboleh ubah "Mobile" sebagai MobileBrnads.

Kod:

 Sub Type_Contoh1 () Dim Mobile Sebagai Sub End Mob 

Langkah 9: Sekarang dengan nama variabel "Mobile" kita dapat mengakses semua pemboleh ubah "MobileBrands".

Kod:

Langkah 10: Sekarang simpan setiap nilai seperti di bawah.

Kod:

 Taipkan Nama Jenama Mudah Alih Sebagai Pelancaran Rentetan Tarikh Sebagai Penyimpanan Tarikh Sebagai RAM Integer Sebagai Harga Bilangan Panjang Jenis Sub Jenis_Contoh1 () Dim Mobile Sebagai MobileBrands Mobile.Name = "Redmi" Mobile.LaunchDate = "10-Jan-2019" Mobile.Storage = 62 Mobile.RAM = 6 Mobile.Price = 16500 MsgBox Mobile.Name & vbNewLine & Mobile.LaunchDate & vbNewLine & _ Mobile. Penyimpanan & vbNewLine & Mobile.RAM & vbNewLine & Mobile.Harga Akhir Sub 

Finally, show the result in a VBA message box like the below one.

Code:

 Sub Type_Example1() Dim Mobile As MobileBrands Mobile.Name = "Redmi" Mobile.LaunchDate = "10-Jan-2019" Mobile.Storage = 62 Mobile.RAM = 6 Mobile.Price = 16500 MsgBox Mobile.Name & vbNewLine & Mobile.LaunchDate & vbNewLine & _ Mobile.Storage & vbNewLine & Mobile.RAM & vbNewLine & Mobile.Price End Sub 

Now run the code using F5 key or manually and see the result in a message box.

Like this, we can use the “VBA Type” statement to define new data type in the subprocedure.

VBA Types vs VBA Class

VBA Type often compared to VBA Class modules. There are certain differences between them. Below are the common differences.

  • Difference 1: VBA Type can contain only Public variables. VBA Class can contain both Public as well as Private variables.
  • Difference 2: VBA Type cannot contain Procedures and Function. VBA Class contains both of them along with properties.
  • Difference 3: VBA Type can be declared in any of the modules and procedures. VBA Class can only be declared in dedicated class modules.