Page 1 of 1

สอบถามการสุ่มแบบไม่ซ้ำแต่มีเงื่อนไขไม่ให้สุ่มบางเลข

Posted: Wed May 01, 2019 11:35 am
by inmyworld11
สวัสดีค่ะ พอดีอยากทำการสุ่มตัวเลขขึ้นมา ระหว่าง 1-100
โดยจะเลือกแค่ 10 ตัวเลขเท่านั้น
ลองค้นหาในเว็บพบว่าสามารถใช้สูตรตาม wordpress/unique-random/ ได้

แต่ถ้าหากต้องการให้ใน 10 ตัวเลขที่เราสุ่มขึ้นมา มีเลขที่เราต้องการอยู่แล้วด้วย
เราสามารถทำได้ไหมคะ

จริงๆเหมือนต้องการสุ่มแค่ 9 ตัวเลข เพราะเรามีแล้วในใจ 1
แค่อยากให้ได้สูตรเหมือนเราสุ่มทั้งหมด

หรือทำได้แค่ใส่ผลลัพธ์ที่เราต้องการไว้ในเซลล์ช่องหนึ่ง
แล้วให้ที่เหลือเป็นการแรมด้อม แต่จะสร้างสูตรยังไงให้ผลลัพธ์การสุ่มอีก 9 ตัว
ไม่ซ้ำกับผลลัพธ์ที่เราเลือกมา และไม่ซ้ำกันเองด้วยค่ะ

ขอบคุณค่ะ

Re: สอบถามการสุ่มแบบไม่ซ้ำแต่มีเงื่อนไขไม่ให้สุ่มบางเลข

Posted: Wed May 01, 2019 12:00 pm
by puriwutpokin
ลองแนบไฟล์ตัวอย่างที่ว่ามาดูครับว่าตัวเลขที่กำหนดไว้คืออะไรแล้วรูปแบบที่ต้องเป็นอย่างจะได้สะดวกต่อการตอบให้ตรงประเด็นครับ

Re: สอบถามการสุ่มแบบไม่ซ้ำแต่มีเงื่อนไขไม่ให้สุ่มบางเลข

Posted: Wed May 01, 2019 12:06 pm
by inmyworld11
ตอนนี้มีเลข 1-100 แต่ว่าอยากสุ่ม 10 เลขจาก 1-100
โดยที่มีเลข 9 อยู่ใน 10 เลขที่สุ่มมาค่ะ

อยากให้ในช่องสีเหลืองแสดงเป็น 9 ตลอด โดยที่ค่าด้านล่างอีก 9 ตัว
ไม่ซ้ำกับเลข 9 และไม่ซ้ำกันเองค่ะ

ขอบคุณมากนะคะ

Re: สอบถามการสุ่มแบบไม่ซ้ำแต่มีเงื่อนไขไม่ให้สุ่มบางเลข

Posted: Wed May 01, 2019 2:02 pm
by snasui
:D ตัวอย่างสูตรครับ

A1 คีย์

=IF(ROWS(A$1:A1)=1,9,RANK(INDEX($E$1:$E$10,AGGREGATE(15,6,(ROW($E$1:$E$10)-ROW($E$1)+1)/(RANK($E$1:$E$10,$E$1:$E$10)<>9),ROWS(A$1:A1)-1)),$E$1:$E$10))

Enter > Copy ลงด้านล่าง

Re: สอบถามการสุ่มแบบไม่ซ้ำแต่มีเงื่อนไขไม่ให้สุ่มบางเลข

Posted: Wed May 01, 2019 9:28 pm
by inmyworld11
ขอบคุณมากๆเลยนะคะ ทำตามอ.ได้แล้วค่ะ

Re: สอบถามการสุ่มแบบไม่ซ้ำแต่มีเงื่อนไขไม่ให้สุ่มบางเลข

Posted: Thu May 02, 2019 1:18 pm
by inmyworld11
สอบถามเพิ่มเติมค่ะ ถ้าอยากให้มีเลข 9 และเลข 51 จะต้องดัดแปลงสูตรเป็นอย่างไรคะ

ขอบคุณมากๆค่ะ

Re: สอบถามการสุ่มแบบไม่ซ้ำแต่มีเงื่อนไขไม่ให้สุ่มบางเลข

Posted: Thu May 02, 2019 5:32 pm
by snasui
:D ตัวอย่างการปรับสูตรครับ

=IF(ROWS(A$1:A1)=1,9,IF(ROWS(A$1:A1)=2,51,RANK(INDEX($E$1:$E$100,AGGREGATE(15,6,(ROW($E$1:$E$100)-ROW($E$1)+1)/(ISNA(MATCH(RANK($E$1:$E$100,$E$1:$E$100),{9,51},0))),ROWS(A$1:A1)-2)),$E$1:$E$100)))