VBA Rawak - Bagaimana menggunakan Pernyataan Rawak?

Rawakkan Penyataan di VBA

Pernyataan VBA Randomize adalah pernyataan satu-pelapik mudah yang kami tambahkan sebelum menerapkan fungsi RND. Setiap kali buku kerja dibuka Pernyataan rawak memberikan nombor benih baru untuk fungsi RND bergantung pada waktu sistem komputer.

Sebelum saya bercakap mengenai pernyataan Randomize, izinkan saya memperkenalkan anda kepada fungsi RND ringkas dengan VBA.

Sebagai fungsi lembaran kerja "RAND," di VBA, "RND" juga akan menghasilkan nombor rawak yang lebih besar daripada 0 tetapi kurang dari 1.

Sekarang lihat sintaks fungsi "RND".

(Nombor): Kami dapat menyampaikan hujah dalam tiga cara.

  • Sekiranya kita lulus nombor sebagai <0, ia akan terus menghasilkan nombor rawak yang sama setiap masa.
  • Sekiranya kita memberikan nombor sebagai 0, ia akan mengulangi nombor terakhir yang diberikannya.
  • Sekiranya kita lulus nombor> 0, ia akan terus memberikan nombor rawak yang berbeza, iaitu nombor rawak seterusnya dalam urutan.

Contohnya

Contohnya, lihat kod di bawah.

Kod:

Sub RND_Contoh () Debug.Cetak Sub Akhir Akhir

Apabila saya menjalankan kod di tetingkap Segera, saya dapat melihat nombor di bawah.

Begitu juga ketika saya melaksanakan kod ini sebanyak 3 kali, saya dapat melihat nombor di bawah.

Sekarang saya akan menutup buku kerja dan membukanya semula.

Sekarang saya akan kembali ke tetingkap editor asas visual.

Sekarang tetingkap segera kosong dan bersih.

Sekali lagi, saya akan melaksanakan kodnya empat kali dan melihat nombor apa yang akan kita dapatkan di tetingkap segera.

Kami mendapat nombor yang sama seperti di atas.

Ini tidak kelihatan seperti nombor rawak kerana setiap kali kita membuka semula fail, kita cenderung mendapatkan nombor yang sama bermula dari awal.

Jadi, bagaimana kita menghasilkan nombor rawak tanpa mengira sama ada buku kerja dibuka atau tidak?

Kita perlu menggunakan pernyataan "Randomize".

Bagaimana Menggunakan Pernyataan Rawak Rawak VBA?

Contoh # 1

Untuk mendapatkan nombor rawak, yang perlu kita lakukan adalah menambahkan satu-pelapik mudah "Randomize" sebelum fungsi RND.

Kod:

Sub Randomize_1 () Randomize Debug.Print Rnd End Sub

Sekarang saya akan menjalankan kod 4 kali dan melihat apa yang saya dapat.

Ini telah menghasilkan nombor di atas di tetingkap tempatan saya.

Sekarang saya akan menutup fail dan membuka semula fail sekali lagi.

Seperti biasa, kita mulakan dengan batu tulis bersih di tetingkap asas visual.

Sekarang saya akan lagi melaksanakan kod dan melihat nombor apa yang kita dapat kali ini.

Wah !!! Kami mendapat nombor yang berbeza kali ini.

Oleh kerana kami menambahkan pernyataan Rawak sebelum fungsi RND, kami mendapat nombor rawak yang berbeza setiap kali kami membuka semula fail.

Ini kelihatan seperti nombor rawak, bukan ???

Contoh # 2

Nombor Rawak Lebih Besar Dari Satu

Seperti yang telah kita lihat, fungsi "RND" dapat menghasilkan angka dari 0 hingga 1 sahaja. Tetapi untuk menghasilkan nombor yang lebih besar daripada satu nombor rawak, kita perlu menggunakan "RANDOM ANTARA," yang tersedia dengan kelas fungsi lembaran kerja.

Oleh itu, untuk menghasilkan nombor rawak yang lebih besar daripada satu, kita perlu menggunakan kod di bawah.

Kod:

Sub Randomize_2 () Randomize Debug.Print Rnd * 100 End Sub

Sekarang saya akan melaksanakan kod dan melihat apa yang kita dapat.

Seperti ini, kita dapat menggunakan pernyataan "Randomize" di VBA untuk menghasilkan nombor rawak setiap kali kita membuka semula file excel.

Artikel menarik...