RANDBETWEEN คืนค่าจำนวนเต็มสุ่มที่อยู่ระหว่างค่าต่ำสุดและสูงสุดที่ระบุ ใช้สำหรับจำลองข้อมูล สร้างรหัสสุ่ม หรือเลือกข้อมูลแบบสุ่ม
=RANDBETWEEN(bottom, top)
=RANDBETWEEN(bottom, top)
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| bottom | Number | Yes | ค่าต่ำสุดของช่วงที่ต้องการสุ่ม (Integer) – จำนวนเต็มที่เล็กที่สุดที่ฟังก์ชันจะคืนค่า | |
| top | Number | Yes | ค่าสูงสุดของช่วงที่ต้องการสุ่ม (Integer) – จำนวนเต็มที่ใหญ่ที่สุดที่ฟังก์ชันจะคืนค่า |
สุ่มสร้างตัวเลขยอดขายรายเดือนระหว่าง 10,000 ถึง 50,000 เพื่อทดสอบ Dashboard
สุ่มวันที่ในปีนี้ โดยใช้ RANDBETWEEN(DATE(2025,1,1), DATE(2025,12,31))
สุ่มเลขที่ผู้โชคดีจากหมายเลข 1 ถึงจำนวนคนทั้งหมด
RANDBETWEEN(1, 100)=RANDBETWEEN(1, 100)
45 (แต่ละครั้งจะต่างกัน)
RANDBETWEEN(DATE(2024,1,1), DATE(2024,12,31))=RANDBETWEEN(DATE(2024,1,1), DATE(2024,12,31))
45000 (หมายเลขซีเรียลของวันที่)
RANDBETWEEN(0, 100)=RANDBETWEEN(0, 100)
87
RANDBETWEEN(1, 1000000)=RANDBETWEEN(1, 1000000)
562847
เพราะ RANDBETWEEN เป็น Volatile Function ซึ่งหมายความว่า มันจะคำนวณใหม่ทุกครั้งที่มีการเปลี่ยนแปลงใน Sheet (เปลี่ยนข้อมูล แก้ไขสูตร หรือกด F9) ถ้าผมต้องการเก็บค่าไว้เพื่อไม่ให้เปลี่ยน ผมจะ Copy แล้ว Paste Special เป็น Value
RANDBETWEEN ได้แค่จำนวนเต็มเท่านั้น ถ้าต้องการสุ่มทศนิยม ผมแนะนำให้ใช้ RAND() ที่สุ่มระหว่าง 0 ถึง 1 หรือ ใช้ RAND()*(top-bottom)+bottom ถ้าต้องการช่วงที่กำหนด หรือถ้าใช้ Excel 365 ลองใช้ RANDARRAY() ดูครับ มีความยืดหยุ่นมากกว่า
RANDBETWEEN ใช้ได้ทั่วทั้ง Excel ตั้งแต่เวอร์ชัน Excel 2010 มา รวมถึง Excel 2016, 2019, 2021, Excel 365 และ Excel Online ด้วยครับ
RANDBETWEEN คืนค่าจำนวนเต็มเพียงค่าเดียว ส่วน RANDARRAY (Excel 365 เท่านั้น) สามารถคืนค่าหลายค่าพร้อมกัน และสามารถสุ่มทศนิยมได้ด้วย ถ้าต้องการข้อมูลสุ่มจำนวนมาก RANDARRAY สะดวกกว่า
ใช่ครับ เพราะว่า RANDBETWEEN เป็น Volatile Function มันจะคำนวณใหม่ทุกครั้ง ถ้า Sheet มีข้อมูลเยอะๆ หลายรอบ อาจจะรู้สึกว่าช้า วิธีแก้คือ Convert ค่า Random เป็น Value หรือใช้ RANDARRAY ถ้าเป็น Excel 365
RANDBETWEEN เป็นฟังก์ชันที่ใช้สำหรับสุ่มตัวเลขจำนวนเต็มในช่วงที่คุณกำหนด เพียงแค่บอกค่าต่ำสุด (bottom) และค่าสูงสุด (top) มันจะคืนค่าตัวเลขสุ่มระหว่างค่านั้น รวมถึงค่าต่ำสุดและสูงสุดด้วย
ที่เจ๋งคือมันเป็น Volatile Function ที่คำนวณใหม่ทุกครั้งที่มีการเปลี่ยนแปลงใน Sheet ทำให้ค่าเปลี่ยนไปเรื่อยๆ ใช้ได้กับจำลองสถานการณ์, สร้างรหัสสุ่ม, หรือแม้แต่เกมเสี่ยงโชค แต่ถ้าอยากให้ค่าคงที่ต้อง Copy > Paste Special > Value
ส่วนตัวผมใช้ RANDBETWEEN บ่อยเวลาต้องสร้างข้อมูลจำลองให้หลักลบ ก่อนบอก client ว่าจะทำระบบแบบไหน ช่วยได้เยอะครับ