Page 1 of 1

อยากทราบการสุ่ม row

Posted: Sun Feb 05, 2012 1:36 pm
by dororo
ผมมีข้อมูลจำนวนนึง ประมาณ 1000 แถว มี 4 คอลัมน์ ต้องการสุ่ม row ยกตัวอย่าง

1 | 1 | 1 | 1
2 | 2 | 2 | 2
3 | 3 | 3 | 3
4 | 4 | 4 | 4

ผมต้องการให้ข้อมูลที่สุ่มออกมาตาม row เช่น

2 | 2 | 2 | 2
4 | 4 | 4 | 4
1 | 1 | 1 | 1
3 | 3 | 3 | 3

3 | 3 | 3 | 3
2 | 2 | 2 | 2
4 | 4 | 4 | 4
1 | 1 | 1 | 1

ไม่ทราบว่าผมต้องทำเช่นไรครับ ผมไม่เป็น excel เลย

Re: อยากทราบการสุ่ม row

Posted: Sun Feb 05, 2012 2:28 pm
by snasui
:D ลองตามภาพด้านล่างครับ
  1. ที่ E2 คีย์สูตรเพื่อทำการสุ่ม
    =RAND()
    Enter > Copy ลงด้านล่าง
  2. ที่ F2 ให้ลำดับที่ของข้อมูลที่ได้จากการสุ่ม
    =RANK(E2,$E$2:$E$101)
    Enter > Copy ลงด้านล่าง
  3. ที่ H2:H5 คีย์ 1-4 ตามลำดับ
  4. ที่ I2 คีย์สูตรสุ่มค่าตามต้องการ
    =INDEX(A$2:A$101,MATCH($H2,$F$2:$F$101,0))
    Enter > Copy ไปด้านขวาและลงด้านล่าง
  5. กรณีต้องการสุ่มใหม่สามารถกดแป้น F9 ซ้ำ ๆ ได้ตามต้องการ

Re: อยากทราบการสุ่ม row

Posted: Sun Feb 05, 2012 6:28 pm
by dororo
ขอบคุณมากเลยครับ ทำได้แล้ว
แต่เวลาผมเซฟเป็นไฟล์ csv ค่าที่สุ่มแล้วหายอะครับ แต่ผมแก้ได้แล้ว โดย copy ค่าที่สุ่มได้ไปไว้ใน notepad แล้วค่อย copy กลับมาที่ excel ใหม่
คือผมจะเอาค่าที่สุ่มแล้วไปใช้กับอีกโปรแกรม เลยต้องเซฟเป็นไฟล์ csv ประมาณของเก่าเรียงตามตัวอักษร ผมอยากกระจายให้ค่ามันคละกัน
ตอนแรกผมนึกว่า excel จะมีปุ่มให้กดสลับเอง แต่แค่นี้ก็ช่วยประหยัดเวลาผมได้มากเลยครับ ไม่ต้องนั่ง copy แล้ว past ทีละแถวเอง :mrgreen:

ขอบคุณครับ