Daftar Isi
Tutorial ini menjelaskan kekhususan algoritma generator angka acak Excel dan mendemonstrasikan cara menggunakan fungsi RAND dan RANDBETWEEN untuk menghasilkan angka acak, tanggal, kata sandi, dan string teks lainnya di Excel.
Sebelum kita mempelajari berbagai teknik menghasilkan angka acak di Excel, mari kita definisikan apa itu sebenarnya. Dalam bahasa Inggris sederhana, data acak adalah serangkaian angka, huruf, atau simbol lain yang tidak memiliki pola apa pun.
Keacakan memiliki berbagai aplikasi yang berbeda dalam kriptografi, statistik, lotere, perjudian, dan banyak bidang lainnya. Dan karena selalu diminati, berbagai metode untuk membuat angka acak telah ada sejak zaman kuno, seperti membalik koin, melempar dadu, mengocok kartu remi, dan sebagainya. Tentu saja, kita tidak akan bergantung pada teknik "eksotis" seperti itu dalam tutorial ini dan fokus padaapa yang ditawarkan generator angka acak Excel.
Generator angka acak Excel - dasar-dasarnya
Meskipun generator acak Excel lolos semua tes standar keacakan, namun tidak menghasilkan benar angka acak. Tapi jangan langsung menghapusnya :) Pseudo-acak angka yang dihasilkan oleh fungsi acak Excel baik-baik saja untuk banyak tujuan.
Mari kita lihat lebih dekat algoritma generator acak Excel sehingga Anda tahu apa yang bisa Anda harapkan darinya, dan apa yang tidak bisa Anda harapkan.
Seperti kebanyakan program komputer, generator angka acak Excel menghasilkan bilangan acak semu Artinya bagi Anda adalah, secara teori, angka acak yang dihasilkan oleh Excel dapat diprediksi, asalkan seseorang mengetahui semua detail algoritma generator. Inilah alasan mengapa tidak pernah didokumentasikan dan hampir tidak akan pernah ada. Nah, apa yang kita ketahui tentang generator angka acak di Excel?
- Fungsi Excel RAND dan RANDBETWEEN menghasilkan angka pseudo-random dari Seragam distribusi Contoh yang baik dari distribusi seragam adalah melempar satu dadu. Hasil lemparan adalah enam kemungkinan nilai (1, 2, 3, 4, 5, 6) dan masing-masing nilai ini sama-sama mungkin terjadi. Untuk penjelasan yang lebih ilmiah, silakan lihat wolfram.com.
- Tidak ada cara untuk melakukan seeding baik fungsi Excel RAND atau RANDBETWEEN, yang dikabarkan diinisialisasi dari waktu sistem komputer. Secara teknis, fungsi benih adalah titik awal untuk menghasilkan urutan angka acak. Dan setiap kali fungsi acak Excel dipanggil, seed baru digunakan yang mengembalikan urutan acak yang unik. Dengan kata lain, saat menggunakan generator angka acak di Excel, Anda tidak bisa mendapatkan urutan yang berulang dengan fungsi RAND atau RANDBETWEEN, atau dengan VBA, atau dengan cara lain.
- Pada versi Excel awal, sebelum Excel 2003, algoritma generasi acak memiliki periode yang relatif kecil (kurang dari 1 juta urutan angka acak yang tidak berulang) dan gagal dalam beberapa tes standar keacakan pada urutan acak yang panjang. Jadi, jika seseorang masih bekerja dengan versi Excel yang lama, Anda sebaiknya tidak menggunakan fungsi RAND dengan model simulasi yang besar.
Jika Anda mencari benar Mereka menawarkan layanan gratis untuk menghasilkan angka acak, permainan dan lotere, kode warna, nama acak, kata sandi, string alfanumerik, dan data acak lainnya.
Oke, pengantar teknis yang cukup panjang ini berakhir dan kita mulai ke hal-hal yang praktis dan lebih berguna.
Fungsi Excel RAND - menghasilkan bilangan real acak
The RAND di Excel adalah salah satu dari dua fungsi yang dirancang khusus untuk menghasilkan angka acak. Ini mengembalikan angka desimal acak (bilangan real) antara 0 dan 1.
RAND() adalah fungsi yang mudah menguap, yang berarti bahwa angka acak baru dihasilkan setiap kali lembar kerja dihitung. Dan ini terjadi setiap kali Anda melakukan tindakan apa pun pada lembar kerja, misalnya memperbarui rumus (tidak harus rumus RAND, hanya rumus lain pada lembar), mengedit sel, atau memasukkan data baru.
Fungsi RAND tersedia di semua versi Excel 365 - 2000.
Karena fungsi Excel RAND tidak memiliki argumen, Anda cukup memasukkan =RAND()
dalam sel dan kemudian salin rumus ke dalam sel sebanyak yang Anda inginkan:
Dan sekarang, mari kita melangkah lebih jauh dan menulis beberapa rumus RAND untuk menghasilkan angka acak sesuai dengan kondisi Anda.
Formula 1. Tentukan nilai batas atas kisaran
Untuk menghasilkan angka acak antara nol dan sembarang N Anda mengalikan fungsi RAND dengan N:
RAND()* NMisalnya, untuk membuat urutan angka acak yang lebih besar dari atau sama dengan 0 tetapi kurang dari 50, gunakan rumus berikut ini:
=RAND()*50
Catatan. Nilai batas atas tidak pernah disertakan dalam urutan acak yang dikembalikan. Misalnya, jika Anda ingin mendapatkan angka acak antara 0 dan 10, termasuk 10, rumus yang tepat adalah =RAND()*11
.
Formula 2. Hasilkan angka acak antara dua angka
Untuk membuat angka acak di antara dua angka yang Anda tentukan, gunakan rumus RAND berikut ini:
RAND()*( B - A )+ ADi mana A adalah nilai batas bawah (angka terkecil) dan B adalah nilai batas atas (angka terbesar).
Misalnya, untuk menghasilkan angka acak antara 10 dan 50, Anda bisa menggunakan rumus berikut ini:
=RAND()*(50-10)+10
Catatan. Rumus acak ini tidak akan pernah mengembalikan angka yang sama dengan angka terbesar dari rentang yang ditentukan ( B nilai).
Formula 3. Menghasilkan bilangan bulat acak di Excel
Untuk membuat fungsi Excel RAND menghasilkan bilangan bulat acak, ambil salah satu rumus yang disebutkan di atas dan bungkus dalam fungsi INT.
Untuk membuat bilangan bulat acak antara 0 dan 50:
=INT(RAND()*50)
Untuk menghasilkan bilangan bulat acak antara 10 dan 50:
=INT(RAND()*(50-10)+10)
Fungsi Excel RANDBETWEEN - menghasilkan bilangan bulat acak dalam rentang tertentu
RANDBETWEEN adalah fungsi lain yang disediakan oleh Excel untuk menghasilkan angka acak. bilangan bulat dalam kisaran yang Anda tentukan:
RANDBETWEEN(bawah, atas)Jelas, b ottom adalah angka terendah dan atas adalah angka tertinggi dalam kisaran angka acak yang ingin Anda dapatkan.
Seperti RAND, RANDBETWEEN Excel adalah fungsi yang mudah menguap dan mengembalikan bilangan bulat acak baru setiap kali spreadsheet Anda menghitung ulang.
Contohnya, untuk menghasilkan bilangan bulat acak antara 10 dan 50 (termasuk 10 dan 50), gunakan rumus RANDBETWEEN berikut ini:
=RANDBETWEEN(10, 50)
Fungsi RANDBETWEEN di Excel dapat membuat angka positif dan negatif. Misalnya, untuk mendapatkan daftar bilangan bulat acak dari -10 hingga 10, masukkan rumus berikut di lembar kerja Anda:
=RANDBETWEEN(-10, 10)
Fungsi RANDBETWEEN tersedia di Excel 365 - Excel 2007. Di versi sebelumnya, Anda dapat menggunakan rumus RAND yang ditunjukkan pada Contoh 3 di atas.
Lebih lanjut dalam tutorial ini, Anda akan menemukan beberapa contoh rumus lagi yang mendemonstrasikan cara menggunakan fungsi RANDBETWEEN untuk menghasilkan nilai acak selain bilangan bulat.
jenis. Di Excel 365 dan Excel 2021, Anda dapat menggunakan fungsi RANDARRAY larik dinamis untuk mengembalikan larik angka acak di antara dua angka yang Anda tentukan.
Membuat angka acak dengan tempat desimal tertentu
Meskipun fungsi RANDBEETWEEN di Excel dirancang untuk mengembalikan bilangan bulat acak, Anda dapat memaksanya untuk mengembalikan angka desimal acak dengan sebanyak mungkin tempat desimal yang Anda inginkan.
Misalnya, untuk mendapatkan daftar angka dengan satu tempat desimal, Anda mengalikan nilai bawah dan atas dengan 10, lalu membagi nilai yang dikembalikan dengan 10:
RANDBETWEEN( nilai bawah * 10, nilai tertinggi * 10)/10Rumus RANDBETWEEN berikut mengembalikan angka desimal acak antara 1 dan 50:
=RANDBETWEEN(1*10, 50*10)/10
Dengan cara yang sama, untuk menghasilkan angka acak antara 1 dan 50 dengan 2 tempat desimal, Anda mengalikan argumen fungsi RANDBETWEEN dengan 100, lalu membagi hasilnya dengan 100 juga:
=RANDBETWEEN(1*100, 50*100) / 100
Cara menghasilkan tanggal acak di Excel
Untuk mengembalikan daftar tanggal acak di antara dua tanggal yang diberikan, gunakan fungsi RANDBETWEEN dalam kombinasi dengan DATEVALUE:
RANDBETWEEN (NILAI TANGGAL( tanggal mulai ), DATEVALUE( tanggal akhir ))Misalnya, untuk mendapatkan daftar tanggal antara 1-Jun-2015 dan 30-Juni-2015 inklusif, masukkan rumus berikut di lembar kerja Anda:
=RANDBETWEEN(DATEVALUE("1-Jun-2015"),DATEVALUE("30-Jun-2015"))
Alternatifnya, Anda bisa menggunakan fungsi DATE sebagai pengganti DATEVALUE:
=RANDBETWEEN(DATE(2015,6,1),DATEVALUE(2015,6,30))
Ingatlah untuk menerapkan format tanggal ke sel dan Anda akan mendapatkan daftar tanggal acak yang mirip dengan ini:
Untuk sejumlah opsi lanjutan seperti menghasilkan hari kerja atau akhir pekan secara acak, lihat Advanced Random Generator for dates.
Cara memasukkan waktu acak di Excel
Mengingat bahwa dalam sistem Excel internal waktu disimpan sebagai desimal, Anda dapat menggunakan fungsi RAND Excel standar untuk memasukkan bilangan real acak, lalu cukup menerapkan format waktu ke sel:
Untuk mengembalikan waktu acak sesuai dengan kriteria Anda, diperlukan rumus acak yang lebih spesifik, seperti yang ditunjukkan di bawah ini.
Formula 1. Hasilkan waktu acak dalam kisaran yang ditentukan
Untuk memasukkan waktu acak antara dua waktu yang Anda tentukan, gunakan fungsi TIME atau TIMEVALUE bersama dengan Excel RAND:
WAKTU( waktu mulai )+RAND() * (WAKTU( waktu mulai ) - WAKTU ( waktu akhir )) TIMEVALUE( waktu mulai )+RAND() * (NILAI WAKTU( waktu mulai ) - TIMEVALUE ( waktu akhir ))Contohnya, untuk menyisipkan waktu acak antara pukul 06:00 dan 17:30, Anda bisa menggunakan salah satu rumus berikut ini:
=WAKTU(6,0,0) + RAND() * (WAKTU(17,30,0) - WAKTU(6,0,0))
=TIMEVALUE("6:00 AM") + RAND() * (TIMEVALUE("5:30 PM") - TIMEVALUE("6:00 AM"))
Formula 2. Menghasilkan tanggal dan waktu acak
Untuk membuat daftar acak tanggal dan waktu , gunakan kombinasi fungsi RANDBETWEEN dan DATEVALUE:
RANDBETWEEN (NILAI TANGGAL( tanggal mulai) , DATEVALUE( tanggal akhir )) + RANDBETWEEN(TIMEVALUE( waktu mulai ) * 10000, NILAI WAKTU ( waktu akhir ) * 10000)/10000Seandainya Anda ingin menyisipkan tanggal acak antara 1 Juni 2015 dan 30 Juni 2015 dengan waktu antara pukul 07:30 dan 18:00, rumus berikut ini akan bekerja dengan baik:
=RANDBETWEEN(DATEVALUE("1-Jun-2015"), DATEVALUE("30-Jun-2015")) + RANDBETWEEN(TIMEVALUE("7:30 AM") * 10000, TIMEVALUE("6:00 PM") * 10000) / 10000
Anda juga bisa menyediakan tanggal dan waktu masing-masing dengan menggunakan fungsi DATE dan TIME:
=RANDBETWEEN(DATE(2015,6,1), DATE(2015,6,30)) + RANDBETWEEN(TIME(7,30,0) * 10000, TIME(18,0,0) * 10000) / 10000
Menghasilkan huruf acak di Excel
Untuk mengembalikan huruf acak, diperlukan kombinasi dari tiga fungsi yang berbeda:
=CHAR(RANDBETWEEN(CODE("A"),CODE("Z")))
Di mana A adalah karakter pertama dan Z adalah karakter terakhir dalam kisaran huruf yang ingin Anda sertakan (dalam urutan abjad).
Dalam rumus di atas:
- CODE mengembalikan kode ANSI numerik untuk huruf-huruf tertentu.
- RANDBETWEEN mengambil angka-angka yang dikembalikan oleh fungsi CODE sebagai nilai bawah dan atas dari range.
- CHAR mengkonversi kode ANSI acak yang dikembalikan oleh RANDBETWEEN ke huruf yang sesuai.
Catatan Karena, kode ANSI berbeda untuk karakter UPPERCASE dan huruf kecil, rumus ini adalah peka huruf besar-kecil .
Jika seseorang hafal Bagan Kode Karakter ANSI, tidak ada yang menghalangi Anda untuk memberikan kode secara langsung ke fungsi RANDBETWEEN.
Contohnya, untuk mendapatkan random Huruf besar antara A (kode ANSI 65) dan Z (kode ANSI 90), Anda menulis:
=CHAR(RANDBETWEEN(65, 90))
Untuk menghasilkan huruf kecil dari a (kode ANSI 97) ke z (kode ANSI 122), Anda menggunakan rumus berikut:
=CHAR(RANDBETWEEN(97, 122))
Untuk menyisipkan karakter khusus acak, seperti !" # $ % & ' ( ) * + , - . /, menggunakan fungsi RANDBETWEEN dengan fungsi bawah diatur ke 33 (kode ANSI untuk "!') dan parameter atas diatur ke 47 (kode ANSI untuk "/").
=CHAR(RANDBETWEEN(33,47))
Menghasilkan string teks dan kata sandi di Excel
Untuk membuat string teks acak di Excel, Anda hanya perlu menggabungkan beberapa fungsi CHAR / RANDBEETWEEN.
Misalnya, untuk menghasilkan daftar kata sandi yang terdiri dari 4 karakter, Anda dapat menggunakan rumus yang mirip dengan ini:
=RANDBETWEEN(0,9) & CHAR(RANDBETWEEN(65,90)) & CHAR(RANDBETWEEN(97, 122)) & CHAR(RANDBETWEEN(33,47))
Untuk membuat rumus lebih ringkas, saya memberikan kode ANSI secara langsung dalam rumus. Keempat fungsi mengembalikan nilai acak berikut ini:
ANTARA (0,9)
- mengembalikan angka acak antara 0 dan 9.CHAR(RANDBETWEEN(65,90))
- mengembalikan huruf UPPERCASE acak antara A dan Z .CHAR(RANDBETWEEN(97, 122))
- mengembalikan huruf kecil acak antara a dan z .CHAR(RANDBETWEEN(33,47))
- mengembalikan karakter khusus secara acak.
String teks yang dihasilkan dengan rumus di atas akan menjadi sesuatu seperti " 4Np# " atau " 2Yu & amp; ".
Sebuah kata peringatan! Jika Anda menggunakan rumus yang sama untuk membuat kata sandi acak, kata sandi tersebut tidak akan kuat. Tentu saja, tidak ada yang mengatakan bahwa Anda tidak dapat menghasilkan string teks yang lebih panjang dengan merantai lebih banyak fungsi CHAR / RANDBETWEEN. Namun, tidak mungkin untuk mengacak urutan atau karakter, yaitu fungsi pertama selalu mengembalikan angka, fungsi ke-2 mengembalikan huruf besar dan seterusnya.
Jika Anda mencari pembuat kata sandi acak tingkat lanjut di Excel yang mampu menghasilkan string teks dengan panjang dan pola apa pun, Anda mungkin ingin memeriksa kemampuan Generator Acak Tingkat Lanjut untuk string pengujian.
Selain itu, harap diingat bahwa string teks yang dihasilkan dengan rumus di atas akan berubah setiap kali lembar kerja Anda menghitung ulang. Untuk memastikan bahwa string atau kata sandi Anda tetap sama setelah dibuat, Anda harus menghentikan fungsi RANDBETWEEN untuk memperbarui nilai, yang membawa kita langsung ke bagian selanjutnya.
Bagaimana mencegah RAND dan RANDBETWEEN dari penghitungan ulang
Jika Anda ingin mendapatkan sekumpulan angka acak, tanggal atau string teks permanen yang tidak akan berubah setiap kali sheet dihitung ulang, gunakan salah satu teknik berikut ini:
- Untuk menghentikan fungsi RAND atau RANDBETWEEN dari penghitungan ulang dalam satu sel pilih sel itu, alihkan ke bilah rumus dan tekan F9 untuk mengganti rumus dengan nilainya.
- Untuk mencegah fungsi acak Excel menghitung ulang, gunakan fitur Tempel Khusus> Values. Pilih semua sel dengan rumus acak, tekan Ctrl + C untuk menyalinnya, lalu klik kanan rentang yang dipilih dan klik Tempel Khusus > Nilai-nilai .
Untuk mempelajari lebih lanjut mengenai teknik ini untuk "membekukan" angka acak, lihat How to replace formulas with values.
Cara menghasilkan angka acak unik di Excel
Tidak satu pun dari fungsi acak Excel yang bisa menghasilkan nilai acak yang unik. Jika Anda ingin membuat daftar angka acak tanpa duplikat , lakukan langkah-langkah ini:
- Gunakan fungsi RAND atau RANDBETWEEN untuk menghasilkan daftar angka acak. Buat lebih banyak nilai daripada yang sebenarnya Anda butuhkan karena beberapa akan menjadi duplikat yang akan dihapus nanti.
- Mengkonversi rumus ke nilai seperti yang dijelaskan di atas.
- Hapus nilai duplikat dengan menggunakan alat bawaan Excel atau Penghapus Duplikat lanjutan kami untuk Excel.
Lebih banyak solusi dapat ditemukan dalam tutorial ini: Cara menghasilkan angka acak tanpa duplikat.
Generator Nomor Acak Lanjutan untuk Excel
Sekarang setelah Anda tahu cara menggunakan fungsi acak di Excel, izinkan saya mendemonstrasikan kepada Anda cara yang lebih cepat, lebih mudah, dan bebas rumus untuk membuat daftar angka acak, tanggal, atau string teks di lembar kerja Anda.
AbleBits Random Generator for Excel dirancang sebagai alternatif yang lebih kuat dan ramah pengguna untuk fungsi RAND dan RANDBETWEEN Excel. Ini bekerja dengan semua versi Microsoft Excel 2019, 2016, 2013, 2010, 2007 dan 2003 dengan sama baiknya dan mengatasi sebagian besar masalah kualitas dan kegunaan dari fungsi acak standar.
Algoritme Penghasil Angka Acak AbleBits
Sebelum menunjukkan Random Generator kami beraksi, izinkan saya memberikan beberapa catatan penting tentang algoritmanya sehingga Anda tahu persis apa yang kami tawarkan.
- AbleBits Random Number Generator untuk Excel didasarkan pada algoritma Mersenne Twister, yang dianggap sebagai standar industri untuk pengacakan semu berkualitas tinggi.
- Kami menggunakan versi MT19937 yang menghasilkan urutan bilangan bulat 32-bit yang terdistribusi secara normal dengan periode yang sangat panjang yaitu 2^19937 - 1, yang lebih dari cukup untuk semua skenario yang dapat dibayangkan.
- Angka acak yang dihasilkan dengan menggunakan metode ini memiliki kualitas yang sangat tinggi. Random Number Generator telah berhasil melewati beberapa tes untuk keacakan statistik, termasuk tes NIST Statistical Test Suiteand Diehard yang terkenal dan beberapa tes keacakan TestU01 Crush.
Tidak seperti fungsi acak Excel, Generator Angka Acak kami menciptakan nilai acak permanen yang tidak berubah ketika spreadsheet menghitung ulang.
Seperti yang telah dicatat, Random Number Generator for Excel yang canggih ini menawarkan cara bebas rumus (dan akibatnya bebas kesalahan :) untuk membuat berbagai nilai acak seperti:
- Bilangan bulat acak atau angka desimal, termasuk angka unik
- Tanggal acak (hari kerja, akhir pekan, atau keduanya, dan tanggal unik opsional)
- String teks acak, termasuk kata sandi dengan panjang dan pola tertentu, atau dengan mask
- Nilai Boolean acak dari TRUE dan FALSE
- Pemilihan acak dari daftar khusus
Dan sekarang, mari kita lihat Random Number Generator beraksi, seperti yang dijanjikan.
Hasilkan angka acak di Excel
Dengan AbleBits Random Number Generator, membuat daftar angka acak semudah mengklik tombol Hasilkan tombol.
Menghasilkan bilangan bulat acak yang unik
Yang harus Anda lakukan adalah memilih kisaran yang akan diisi dengan bilangan bulat acak, menetapkan nilai bawah dan atas, dan, secara opsional, memeriksa Nilai-nilai Unik kotak.
Menghasilkan bilangan real acak (desimal)
Dengan cara yang sama, Anda dapat menghasilkan serangkaian angka desimal acak dalam kisaran yang Anda tentukan.
Buat tanggal acak di Excel
Untuk tanggal, Random Number Generator kami menyediakan opsi berikut ini:
- Hasilkan tanggal acak untuk periode waktu tertentu - Anda memasukkan tanggal terbawah dalam Dari dan tanggal teratas di kotak Untuk kotak.
- Sertakan hari kerja, akhir pekan, atau keduanya.
- Menghasilkan tanggal yang unik.
Menghasilkan string teks dan kata sandi acak
Selain angka dan tanggal acak, dengan Random Generator ini Anda dapat dengan mudah membuat string alfanumerik acak dengan set karakter tertentu. Panjang string maksimum adalah 99 karakter, yang memungkinkan menghasilkan kata sandi yang sangat kuat.
Opsi unik yang disediakan oleh AbleBits Random Number Generator adalah membuat string teks acak dengan mask Ini adalah fitur yang sangat berguna untuk menghasilkan pengidentifikasi unik global (GUID), kode pos, SKU, dan sebagainya.
Misalnya, untuk mendapatkan daftar GUID acak, Anda memilih set karakter Hexadecimal dan mengetik ????????-????-????-???????????? di dalam Topeng kotak, seperti yang ditunjukkan dalam tangkapan layar:
Jika Anda tertarik untuk mencoba Random Generator kami, Anda dipersilakan untuk mengunduhnya di bawah ini sebagai bagian dari Ultimate Suite for Excel kami.
Unduhan yang tersedia
Contoh rumus acak (file .xlsx)
Ultimate Suite 14 hari versi yang berfungsi penuh (file .exe)