Visual Basic for Applications:
การสร้างตัวเลขสุ่ม
วิธีการ:
ใน VBA, ฟังก์ชัน Rnd
ถูกใช้ในการสร้างตัวเลขสุ่ม โดยค่าเริ่มต้น Rnd
จะสร้างตัวเลขแบบเดี่ยวความแม่นยำสูงที่มากกว่าหรือเท่ากับ 0 และน้อยกว่า 1 นี่คือขั้นตอนและตัวอย่างสองสามอย่างเพื่อใช้ประโยชน์จากตัวเลขสุ่มอย่างมีประสิทธิภาพ:
ตัวเลขสุ่มง่าย ๆ: เพื่อสร้างตัวเลขสุ่มพื้นฐาน คุณเพียงแค่ต้องเรียก
Rnd()
:Sub GenerateRandomNumber() Dim randomNumber As Single randomNumber = Rnd() ' ตัวเลขสุ่มระหว่าง 0 และ 1 MsgBox randomNumber End Sub
การตั้งค่า Seed: คำสั่ง
Randomize
เริ่มต้นตัวสร้างตัวเลขสุ่ม, ซึ่งอาจเป็นสิ่งสำคัญสำหรับการรับประกันผลลัพธ์ที่แตกต่างกันในทุกครั้งที่รหัส VBA ของคุณทำงาน:Sub SeedRandomNumber() Randomize Dim randomNumber As Single randomNumber = Rnd() MsgBox randomNumber End Sub
การสร้างตัวเลขในช่วง: บ่อยครั้งคุณจะต้องการตัวเลขสุ่มภายในช่วงที่เฉพาะเจาะจง นี่คือวิธีการสร้างตัวเลขระหว่าง 1 ถึง 100:
Sub RandomNumberInRange() Randomize Dim randomNumber As Integer randomNumber = Int((100 * Rnd()) + 1) ' ตัวเลขสุ่มระหว่าง 1 ถึง 100 MsgBox randomNumber End Sub
ผลลัพธ์ตัวอย่าง:
หลังจากที่ทำงาน RandomNumberInRange
, คุณอาจเห็นกล่องข้อความที่แสดงตัวเลขเช่น 45
.
ศึกษาลึก ๆ:
ฟังก์ชัน Rnd
ใน VBA ที่ใช้งานง่าย, จริง ๆ แล้วมันสร้างตัวเลขปลอมสุ่มตามอัลกอริทึมที่กำหนดไว้ แปลว่าลำดับของตัวเลขที่มันผลิตไม่ใช่ตัวเลขสุ่มจริง ๆ แต่สามารถเพียงพอสำหรับงานทั่วไปที่ต้องการกระบวนการสโตแคสติก
ในอดีต, ความสามารถในการสร้างตัวเลขสุ่มใน VBA ติดตามกลับไปถึงเวอร์ชันแรก ๆ ของ Basic, ปรับเปลี่ยนตามเวลาเพื่อรวมคุณลักษณะเช่น Randomize
เพื่อปรับปรุงความสุ่มโดยการเริ่มต้นอัลกอริทึมด้วยจุดเริ่มต้น อย่างไรก็ตาม, สำหรับการประยุกต์ใช้งานที่ต้องการระดับความสุ่มสูงเช่นการดำเนินการทางคริปโตกราฟิกที่ปลอดภัย, Rnd
ของ VBA อาจไม่ใช่เครื่องมือที่ดีที่สุด ควรพิจารณาทางเลือกในสภาพแวดล้อมการโปรแกรมที่เข้มแข็งมากขึ้นหรือภาษาที่ออกแบบมาพร้อมกับคริปโตกราฟิในใจ เช่น โมดูล secrets
ของ Python หรือ SecureRandom
ของ Java
ถึงแม้ว่าจะมีข้อจำกัด, ความเรียบง่ายและการเข้าถึงง่ายในการสร้างตัวเลขสุ่มใน VBA ยังคงทำให้เป็นเครื่องมือที่มีค่าสำหรับการใช้งานหลากหลายที่เบากว่า, การทำงานจำลอง, และวัตถุประสงค์ทางการศึกษา