17 มี.ค. 2022 เวลา 14:53 • การศึกษา
เอาละ สำหรับวันนี้เราจะมา ใช้ คำสั่ง loop อีกตัวอย่างหนึ่ง ที่เป็นแบบคัดเลือก ซึ่ง ใช้สำหรับคัดเกรดหรือคัดเลือกระดับ อะไรก็ได้ โดยผลลัพธ์ที่ได้มีได้เพียงแบบเดียวเท่านั้น
เราเรียก loop สำหรับทำแบบนี้ว่า select case โดยทั่วไปแล้ว คำสั่ง select case เป็นคำสั่งคล้ายๆกับคำสั่ง if else หรือ if elseif แต่คำสั่งนี้จะให้เลือกตามข้อกำหนดเงื่อนไข ถ้าเงื่อนไขเป็น true ก็จะทำชุดคำสั่งนั้นและออกจากชุดคำสั่งรวมไปเลย โดยจะไม่เลือกพิจารณาทางเลือกอื่น
พูดไปคงไม่เห็นภาพ อันดับแรกเหมือนทุกครั้ง เราจะสร้างตารางขึ้นมาก่อน
ตารางสำหรับทดสอบ
หลังจากนั้นให้เขียน Code ตามนี้
code VBA
ขออธิบาย code นิดนึง เนื่องจากเราต้องกำหนด i เป็น integer (จำนวนเต็ม) เพื่อให้ สามารถใช้ loop for next ในการวนลูปจากตาราง เสร็จแล้ว ในบรรทัดแรก Select Case จะหมายถึง ค่าใน Cells ที่เราต้องการเอามาทำการคัดแยก ตามเงื่อนไขที่เราสร้าง ในที่นี้คือ ค่าตัวเลขความสูง ใน "B" column
จากนั้น ใช้ คำสั่ง Case เพื่อแยก โดยกำหนดตั้งแต่ ระดับสูง ลงมาต่ำ หากตรงกับเงื่อนไขใดก็จะเข้าสู่คำสั่งภายใน ทันที ในทีนี้คำสั่งภายใน Case คือ Cells(i, 3).Interior.Color และ Cells(i, 3).Value
หลังจากเข้าสู่คำสั่งและได้คำตอบแล้วก็จะออกจาก คำสั่ง Select Case ทันที และเข้าสู่ ลูป For ในลำดับถัดไปจนหมด หากค่าที่ได้ไม่ตรงกับ Case ใดเลย จะวิ่งสู่ Case Else และออกจาก For Next ทันที
เมื่อเรา run program โดยกด F5 หรือเครื่องหมายลูกศร ใน VBA จะได้ผลลัพธ์ดังนี้
ผลที่ได้
แล้วพบกันคราวหน้า มีอะไรมาฝากอย่าลืมติดตามนะ

ดูเพิ่มเติมในซีรีส์

โฆษณา