วิธีการเขียนคำสั่งกรณีใน vba (พร้อมตัวอย่าง)
คำสั่ง case คือประเภทของคำสั่งที่วนไปตามเงื่อนไขและส่งกลับค่าเมื่อตรงตามเงื่อนไขแรก
คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้เพื่อเขียนคำสั่ง case ใน VBA:
SubCaseStatement () Dim i As Integer For i = 2 To 9 Select Case Range(" B " & i).Value Case Is >= 30 result=" Great " Box Is >= 20 result = " Good " Case Is >= 15 result=" OK " Case Else result=" Bad " End Select Range(" C " & i).Value = result Next i End Sub
ตัวอย่างนี้จะดูแต่ละเซลล์ในช่วง B2:B9 และส่งกลับค่าต่อไปนี้ในช่วง C2:C9 :
- “ ดีเยี่ยม ” หากค่าในคอลัมน์ B มากกว่าหรือเท่ากับ 30
- มิฉะนั้นจะเป็น ” ดี ” หากค่าในคอลัมน์ B มากกว่าหรือเท่ากับ 20
- มิฉะนั้น ” ตกลง ” หากค่าในคอลัมน์ B มากกว่าหรือเท่ากับ 15
- มิฉะนั้นจะ ” แย่ ” หากไม่มีเงื่อนไขใด ๆ ข้างต้น
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ
ตัวอย่าง: การเขียนคำสั่งกรณีใน VBA
สมมติว่าเรามีชุดข้อมูลต่อไปนี้ใน Excel ที่แสดงจำนวนคะแนนที่ผู้เล่นบาสเก็ตบอลแต่ละคนทำได้:
สมมติว่าเราต้องการเขียนคำสั่ง case เพื่อกำหนดค่าดีเยี่ยม ดี ตกลง หรือแย่ ให้กับผู้เล่นแต่ละคนตามจำนวนคะแนนที่ได้
เราสามารถสร้างมาโครต่อไปนี้เพื่อทำสิ่งนี้:
SubCaseStatement () Dim i As Integer For i = 2 To 9 Select Case Range(" B " & i).Value Case Is >= 30 result=" Great " Box Is >= 20 result = " Good " Case Is >= 15 result=" OK " Case Else result=" Bad " End Select Range(" C " & i).Value = result Next i End Sub
เมื่อเราเรียกใช้แมโครนี้ เราได้รับผลลัพธ์ต่อไปนี้:
คอลัมน์ C ส่งกลับค่าดีเยี่ยม ดี ตกลง หรือแย่โดยยึดตามค่าที่สอดคล้องกันในคอลัมน์ B
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีการทำงานทั่วไปอื่นๆ ใน VBA:
VBA: วิธีจัดประเภทรายการค่า
VBA: วิธีนับค่าที่ไม่ซ้ำในช่วง
VBA: วิธีนับจำนวนแถวในช่วง