Select Case Statement

Select Case testexpression
    [Case expressionlist-n
        [statements-n]] ...
    [Case Else
        [elsestatements]]
End Select

ตัวอย่างที่ 1

สมมติ ในแฟ้มมีเซลล์หนึ่งที่ตั้งชื่อว่า Source ไว้แล้ว โดยเราอยากให้ใช้ค่าใน Source เป็นตัวควบคุมการตัดสินใจเลือกให้ชุดคำสั่งที่ต้องการทำงานต่อไป

  • ถ้า Source มีค่าเท่ากับ 100 พอดี ให้เลือกชุดคำสั่งชื่อ SendData1 ทำงาน
  • ถ้า Source มีค่าไม่เท่ากับ 100 ให้เลือกชุดคำสั่งชื่อ SendData2 ทำงาน

If [Source] = 100 Then SendData1 Else SendData2

หรือ

If [Source] = 100 Then
    SendData1
Else
    SendData2
End If
หรือ

Select Case [Source]
    Case 100
        SendData1
    Case Else
        SendData2
End Select

ตัวอย่างที่ 2

ขอใช้ค่าจาก Source เช่นเดียวกับตัวอย่างแรก เพียงแต่แทนที่จะตรวจสอบว่า Source มีค่าเท่ากับ 100 หรือไม่เท่านั้น คราวนี้ให้เปรียบเทียบค่า Source ต่อไปอย่างละเอียดดังนี้

  • ถ้า Source มีค่ามากกว่า 100 ให้เลือกชุดคำสั่งชื่อ SendData1a ทำงาน
  • ถ้า Source มีค่ามากกว่า 80 ให้เลือกชุดคำสั่งชื่อ SendData1b ทำงาน
  • ถ้า Source มีค่ามากกว่า 60 ให้เลือกชุดคำสั่งชื่อ SendData1c ทำงาน
  • ถ้า Source มีค่ามากกว่า 40 ให้เลือกชุดคำสั่งชื่อ SendData1d ทำงาน
  • ถ้า Source มีค่ามากกว่า 20 ให้เลือกชุดคำสั่งชื่อ SendData1e ทำงาน
  • ถ้า Source มีค่าอื่นๆ ให้เลือกชุดคำสั่งชื่อ SendData2 ทำงาน

ในกรณีที่มีเงื่อนไขซับซ้อนมากขึ้นนี้ ถ้าจะใช้ If...Then...Else Statements จะต้องเขียน ElseIf ซ้อนกันหลายชั้น แต่เนื่องจากทุกเงื่อนไขที่ใช้นั้น ใช้ค่าจาก Source เดียวกันตลอด จึงน่าเลือกใช้ Select Case Statement จะเขียนได้ง่าย มีโครงสร้างที่ชัดเจน และช่วยให้ย้อนกลับมาแก้ไขได้สะดวกกว่า

Select Case [Source]
    Case Is > 100
        SendData1a
    Case Is > 80
        SendData1b
    Case Is > 60
        SendData1c
    Case Is > 40
        SendData1d
    Case Is > 20
        SendData1e
    Case Else
        SendData2
End Select

Related Articles

© Copyright 1999

สงวนลิขสิทธิ์ตามกฎหมาย

ห้ามนำข้อความหรือส่วนหนึ่งส่วนใดของบทความหรือวิดีโอหรือรูปภาพไปใช้เพื่อการค้าขาย หรือเพื่อประโยชน์ส่วนตัว

อนญาตให้นำไปใช้เพื่อสาธารณประโยชน์โดยขอให้ระบุที่มาและชื่อผู้เขียนกำกับไว้ด้วยเสมอ

ลิงก์เว็บ Excel Expert Training

เว็บสำหรับ เรียนออนไลน์

เว็บสำหรับ เรียนแบบกลุ่ม-ส่วนตัว

ติดตามข่าวสารได้จาก facebook

ถามปัญหาได้ที่ กลุ่มคนรัก Excel

และไลน์กลุ่ม Excel Expert Group

ที่อยู่และการติดต่อ

สมเกียรติ ฟุ้งเกียรติ 7/1 รามคำแหง ซอย 35 หัวหมาก บางกะปิ กทม 10240 โทร 097-140-5555, 02-718-9331

Excel@ExcelExpertTraining.com

sfk234x234