ส่งกลับ เดียว ที่มีตัวเลขสุ่ม
ไวยากรณ์
Rnd[(number)]
อาร์กิวเมนต์ตัวเลขที่เลือกระบุได้คือ นิพจน์เดียวหรือตัวเลขที่ถูกต้องใดก็ได้
ส่งกลับค่า
| ถ้า number เป็น | Rnd จะสร้าง |
|---|---|
| น้อยกว่าศูนย์ | ตัวเลขเดียวกันทุกครั้ง โดยใช้ ตัวเลข เป็นเมล็ด |
| มากกว่าศูนย์ | หมายเลขสุ่มถัดไปในลําดับ |
| เท่ากับศูนย์ | หมายเลขที่สร้างขึ้นล่าสุด |
| ไม่ได้ให้ | หมายเลขสุ่มถัดไปในลําดับ |
ข้อสังเกต
ฟังก์ชัน Rnd จะส่งกลับค่าที่น้อยกว่า 1 แต่มากกว่าหรือเท่ากับศูนย์
ค่าของ ตัวเลข จะกําหนดวิธีที่ Rnd สร้างตัวเลขสุ่ม
สําหรับเมล็ดเริ่มต้นที่กําหนด ลําดับหมายเลขเดียวกันจะถูกสร้างขึ้น เนื่องจากแต่ละการเรียกต่อเนื่องไปยังฟังก์ชัน Rnd จะใช้หมายเลขก่อนหน้าเป็นเมล็ดสําหรับหมายเลขถัดไปในลําดับ
ก่อนที่จะเรียก Rnd ให้ใช้ คําสั่ง Randomize โดยไม่มีอาร์กิวเมนต์เพื่อเตรียมใช้งานตัวสร้างตัวเลขแบบสุ่มด้วยเมล็ดโดยยึดตามตัวจับเวลาของระบบ
เมื่อต้องการสร้างจํานวนเต็มแบบสุ่มในช่วงที่กําหนด ให้ใช้สูตรนี้:
Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
ที่นี่ Upperbound คือตัวเลขสูงสุดในช่วง และ ค่าต่ําสุด คือตัวเลขต่ําสุดในช่วง
หมายเหตุ
เมื่อต้องการทําซ้ําลําดับตัวเลขแบบสุ่ม ให้เรียก Rnd ที่มีอาร์กิวเมนต์ลบทันทีก่อนที่จะใช้ Randomize กับอาร์กิวเมนต์ตัวเลข การใช้ Randomize ด้วยค่าเดียวกันสําหรับ ตัวเลข จะไม่ทําซ้ําลําดับก่อนหน้า
ตัวอย่างคิวรี
| นิพจน์ | ผลลัพธ์ |
|---|---|
| SELECT ProductSales.ProductID, Rnd([Discount]) AS RandomNumbers FROM ProductSales; | ส่งกลับ ID ผลิตภัณฑ์พร้อมกับตัวเลขแบบสุ่มในคอลัมน์ RandomNumbers |
ตัวอย่าง VBA
หมายเหตุ
ตัวอย่างต่อไปนี้จะสาธิตการใช้ฟังก์ชันนี้ในโมดูล Visual Basic for Applications (VBA) สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการทํางานกับ VBA ให้เลือก การอ้างอิงสําหรับนักพัฒนา ในรายการดรอปดาวน์ที่อยู่ถัดจาก ค้นหา แล้วใส่คําอย่างน้อยหนึ่งคําในกล่องค้นหา
ตัวอย่างนี้ใช้ฟังก์ชัน Rnd เพื่อสร้างค่าจํานวนเต็มแบบสุ่มตั้งแต่ 1 ถึง 6
Dim MyValue
' Generate random value between 1 and 6.
MyValue = Int((6 * Rnd) + 1)