เวบถาม-ตอบปัญหา Excel http://www.snasui.com/
Group Blog
 
<<
พฤษภาคม 2554
1234567
891011121314
15161718192021
22232425262728
293031 
 
12 พฤษภาคม 2554
 
All Blogs
 
การสุ่มแบบคัดออก

การสุ่มข้อมูลแบบคัดออกนี้ สามารถนำไปใช้ในการแจกรางวัล ผู้ที่ได้รางวัลแล้วจะถูกคัดออกไม่นำมาสุ่มต่อ ปกติจะเป็นการสุ่มขึ้นมาเป็นครั้ง ๆ ไป ไม่ได้สุ่มขึ้นมาพร้อมกันแบบหลาย ๆ คน การทำเช่นนั้นต้องอาศัย VBA มาช่วยในการสุ่มครับ

โดยมีวิธีการคือ

  1. เตรียมชีทรายชื่อที่ต้องการสุ่มสมมุติชื่อชีท Names โดยเก็บข้อมูลที่ต้องการสุ่มไว้ในคอลัมน์ A
  2. เตรียมชีทที่ใช้ในการแสดงผลการสุ่มและเก็บข้อมูลของคนที่ถูกสุ่มแล้วแยกไว้ต่างหาก สมมุติชื่อชีท Random
  3. เขียน Code VBA เพื่อทำการสุ่มข้อมูลและเก็บข้อมูลที่ได้จากการสุ่มตามด้านล่าง
  4. สร้างปุ่มเพื่อคลิกสุ่มข้อมูลและเก็บข้อมูล โดยให้ชื่อปุ่ม Random และ Keep Value ตามลำดับ
  5. ทำการ Assigned Macro ที่ชื่อ RandomName ให้กับปุ่ม Random และ Assigned Macro ที่ชื่อ KeepVal ให้กับปุ่ม Keep Value ตามลำดับ

Code VBA สำหรับการสุ่มข้อมูล


Dim r As Range
Sub RandomName()
Dim i As Integer, j As Integer
    With Worksheets("Names")
        j = .Range("A65536").End(xlUp).Row - 1
        i = Int(Rnd * (j - 1) + 1)
        Set r = .Cells(i, 1)
    End With
    With Worksheets("Random")
        .Range("D7") = r
        .Shapes("Button 12").Visible = True
    End With
End Sub

Sub KeepVal()
Dim rs As Range, rt As Range
    With Worksheets("Random")
        Set rs = .Range("D7")
        If .Range("G7") = "" Then
            Set rt = .Range("G7")
        Else
            Set rt = .Range("G65536").End(xlUp).Offset(1, 0)
        End If
        rt = rs
        rt.Offset(0, -1) = rt.Offset(-1, -1) + 1
        r.EntireRow.Delete
        .Shapes("Button 12").Visible = False
    End With
End Sub


ภาพตัวอย่างการสุ่มข้อมูล

RandomAndKeepVal

จากภาพด้านบนจะเห็นว่าเมื่อคลิกปุ่ม Random แล้วจะทำการสุ่มข้อมูลมาให้ที่ D7 และจะมีปุ่ม Keep Value ปรากฏขึ้นมาเพื่อเตรียมพร้อมสำหรับการเก็บข้อมูลไว้ที่ F7:G7 เป็นต้นไป เมื่อคลิกปุ่ม Keep Value ก็จะทำการเก็บข้อมูลที่สุ่มมาแล้ว จากนั้นจะทำการซ่อนปุ่มนี้ไว้ และจะปรากฏอีกทีเมื่อคลิกปุ่ม Random

สำหรับสมาชิกเวบ //www.snasui.com/ สามารถดาวน์โหลดไฟล์ตัวอย่างได้จากที่นี่ครับ Random and keep value




Create Date : 12 พฤษภาคม 2554
Last Update : 12 พฤษภาคม 2554 19:15:27 น. 0 comments
Counter : 2053 Pageviews.

ชื่อ :
Comment :
  *ใช้ code html ตกแต่งข้อความได้เฉพาะสมาชิก
 

คนควน
Location :
สงขลา Thailand

[ดู Profile ทั้งหมด]

ฝากข้อความหลังไมค์
Rss Feed
Smember
ผู้ติดตามบล็อก : 27 คน [?]





MVP Excel



MOS Expert in Excel 2003
MOS Specialist in Excel 2003



คนควน เป็นคน อ.สะเดา จ.สงขลา จบการศึกษาทางด้านการบัญชีระดับปริญญาตรีและปริญญาโท จากมหาวิทยาลัยรามคำแหง มีความถนัดหลายด้าน ทั้งเรื่อง ศิลปะ ดนตรี กีฬา คอมพิวเตอร์ จากการที่ได้คลุกคลีกับโปรแกรมชุด Microsoft Office จึงได้เรียนรู้เกี่ยวกับเทคนิคการใช้งานต่าง ๆ โดยเฉพาะ Excel จะมีความถนัดเป็นพิเศษ เนื่องจากใช้เป็นส่วนใหญ่ในการทำงานประจำวัน ได้รับ MOS Cetificate (Microsoft Office Specialist) ทั้ง Specialist และ Expert อีกทั้งเป็นคนชอบศึกษาค้นคว้าทดลองและชอบแบ่งปัน จึงได้เขียน Blog เพื่อเผยแพร่เทคนิคการใช้งาน Excel เพื่อประโยชน์แก่ผู้สนใจจะได้มีแหล่งศึกษา นำไปประยุกต์ใช้ให้เกิดประโยชน์สูงสุดกับงานของตนเองต่อไป












เมื่อวันที่ 24 ม.ค. 2553 ได้เปิด Forum เพื่อถาม-ตอบปัญหาเกี่ยวกับ Excel ทั้งเป็นแหล่งศึกษาให้กับผู้สนใจทั่วไป สามารถคลิกภาพด้านบนเพื่อไปยัง Forum ได้ครับ



ข้อความหรือรูปภาพที่ปรากฏในกระทู้ที่ท่านเห็นอยู่นี้ เกิดจากการตั้งกระทู้และถูกส่งขึ้นกระดานข่าวโดยอัตโนมัติจากบุคคลทั่วไป ซึ่ง เจ้าของ Blog มิได้มีส่วนร่วมรู้เห็น ตรวจสอบ หรือพิสูจน์ข้อเท็จจริงใด ๆ ทั้งไม่ร่วมรับผิดชอบต่อความคิดเห็นของบุคคลใด ๆ ทั้งสิ้น


Statistics Hits
New Comments
Friends' blogs
[Add คนควน's blog to your web]
Links
 

 Pantip.com | PantipMarket.com | Pantown.com | © 2004 BlogGang.com allrights reserved.