Page 1 of 1

การสุ่มตัวเลขที่ไม่ต่อเนื่องกัน

Posted: Thu Feb 13, 2020 9:02 pm
by Xengsue
สวัสดีครับ

ขอถามเกี่ยวกับการสุ่มด้วยครับ
ว่าการที่เราทำการสุ่มปกติมันจะทำการสุ่มได้แบบตัวเลขต่อเนื่องกันเช่น:

randbetween(1,10) มันจะทำการสุ่มให้จาก 1 ถึง 10

แล้วถ้าหากต้องการสุ่มแบบตัวเลขไม่ต่อเนื่องกันเช่น:

ให้สุ่มอยู่ใน 2 ช่วงคึอจาก 1-3 กับ 7-10

จะสามารถทำได้ไหมครับ

ขอบคุณครับ

Re: การสุ่มตัวเลขที่ไม่ต่อเนื่องกัน

Posted: Thu Feb 13, 2020 9:38 pm
by Bo_ry
=MOD(MOD(4-RANDBETWEEN(1,7),10)+9,10)+1

Re: การสุ่มตัวเลขที่ไม่ต่อเนื่องกัน

Posted: Fri Feb 14, 2020 12:37 am
by Xengsue
Bo_ry wrote: Thu Feb 13, 2020 9:38 pm =MOD(MOD(4-RANDBETWEEN(1,7),10)+9,10)+1
คิดยังไงก็คิดไม่ออก

ขอบคุณมากครับ
ที่ช่วยให้คำแนะนำ

Re: การสุ่มตัวเลขที่ไม่ต่อเนื่องกัน

Posted: Fri Feb 14, 2020 6:59 am
by Xengsue
Bo_ry wrote: Thu Feb 13, 2020 9:38 pm =MOD(MOD(4-RANDBETWEEN(1,7),10)+9,10)+1
รบกวนช่วยอธิบาย step การทำงานของสูตรที่ให้มาหน่อยครับ ผมลองประยุกต์ใช้กับช่วงอื่นไม่ได้เลย

ขอบคุณครับ

Re: การสุ่มตัวเลขที่ไม่ต่อเนื่องกัน

Posted: Sun Feb 16, 2020 7:07 am
by snasui
:D Mod คือการหาเศษจากการหาร ลองค่อย ๆ แกะสูตรดูครับ

ีการสุ่มเป็นช่วงตามโจทย์ที่ยกมาอีกแบบคือ

=LOOKUP(RANDBETWEEN(1,10),{1,2,3,7,8,9,10})

เป็นการสุ่มมา 10 ค่าแต่เว้น 4, 5, 6 สังเกตชุดตัวเลขจะไม่มี 4, 5, 6 สามารถสุ่มได้หลายช่วงตามต้องการ ชุดตัวเลขนี้จะคีย่์ไว้ที่ใดแล้วค่อยนำมาอ้างอิงในสูตร จะเว้นตำแหน่งไหนก็ได้ครับ

Re: การสุ่มตัวเลขที่ไม่ต่อเนื่องกัน

Posted: Mon Feb 17, 2020 12:44 am
by Bo_ry
ช่วงอื่นใช้แบบนี้ละกัน
=INDEX({1,2,3,7,8,9,10},RANDBETWEEN(1,7))

Re: การสุ่มตัวเลขที่ไม่ต่อเนื่องกัน

Posted: Mon Feb 17, 2020 10:33 am
by Xengsue
snasui wrote: Sun Feb 16, 2020 7:07 am :D Mod คือการหาเศษจากการหาร ลองค่อย ๆ แกะสูตรดูครับ

ีการสุ่มเป็นช่วงตามโจทย์ที่ยกมาอีกแบบคือ

=LOOKUP(RANDBETWEEN(1,10),{1,2,3,7,8,9,10})

เป็นการสุ่มมา 10 ค่าแต่เว้น 4, 5, 6 สังเกตชุดตัวเลขจะไม่มี 4, 5, 6 สามารถสุ่มได้หลายช่วงตามต้องการ ชุดตัวเลขนี้จะคีย่์ไว้ที่ใดแล้วค่อยนำมาอ้างอิงในสูตร จะเว้นตำแหน่งไหนก็ได้ครับ
ขอบคุณมากครับ
สูตรเข้าใจง่าย นำไปประยุกต์ใช้ได้ทุกช่วงครับ

Re: การสุ่มตัวเลขที่ไม่ต่อเนื่องกัน

Posted: Mon Feb 17, 2020 10:35 am
by Xengsue
Bo_ry wrote: Mon Feb 17, 2020 12:44 am ช่วงอื่นใช้แบบนี้ละกัน
=INDEX({1,2,3,7,8,9,10},RANDBETWEEN(1,7))
ขอบคุณมากครับ
นำไปประยุกต์ใช้ได้ทุกช่วงครับ