2. การใช้ประโยคคำสั่ง Select....Case

การใช้ประโยคคำสั่ง Select … case

ประโยคคำสั่ง Select … case  เหมาะสำหรับใช้ทดสอบเงื่อนไขที่มีทางเลือกหลายอย่าง มีรูปแบบดังนี้


 

 

 

ความหมาย ประโยคคำสั่ง Select … case เป็นการทดสอบค่าของตัวแปรหรือนิพจน์ในแต่ละ Case

ถ้าตรงกับ Case ใด ก็ทำตามประโยคคำสั่ง Case นั้น แล้วจบการทดสอบเลย แต่ถ้าค่าไม่ตรงไปยัง Case ต่อไป และถ้าไม่มี Case ไหนที่ตรงเลยก็จะทำให้ประโยคคำสั่งหลัง Case EIse แล้วจบการทดสอบด้วย  End Select

 

ผังงานประโยคคำสั่ง Select … case  เป็นดังภาพ 5-12


 

 

                                                          ภาพ 5-12 ผังงานของคำสั่ง Select … case

 

 

 

 


จากตัวอย่างการตัดเกรด เมื่อใช้คำสั่ง Select … case จะได้ดังนี้


 

 

 

 

โดยนิพจน์ Is >= ตัวเลข หมายถึง ค่าของตัวแปร Score มากกว่าหรือเท่ากับค่าตัวเลขนี้หรือไม่

ถ้าจะเปรียบเทียบค่าตัวแปรใน Select  case เท่ากับค่าใดๆ หรือไม่ ก็ใช้ Case ตามตัวเลขนั้นได้เลย เช่น Case 50 ไม่ต้องเขียนว่า Is = 50

 

 

 ดังนั้น การกำหนดเงื่อนไข Case ต้องจัดลำดับถูกต้องด้วย มิฉะนั้นจะได้ผลผิดพลาดไป

 

การเขียนรายการนิพจน์ (Expression List) ที่ใช้ทดสอบหลัง Case

ประโยชน์คำสั่ง Select … Case สามารถใช้ได้กับข้อมูลทุกแบบ และเขียนรายการนิพจน์ (Expression List) ที่ใช้ทดสอบหลัง Case ได้หลายแบบดังนี้

1. ตัวแปร หรือค่าข้อมูล หรือนิพจน์ทั่วไป เช่น การคำนวณ

2. Is เครื่องหมายเปรียบเทียบ ตัวแปร หรือค่าข้อมูล หรือนิพจน์ทั่วไป

3. นิพจน์ 1 To นิพจน์ 2 สำหรับกำหนดค่าเป็นช่วง

4. รวมทุกแบบ หรือใช้ปนกันได้

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

Select Case A

                Case B

                                ประโยคคำสั่งที่ให้ทำ กรณีค่าของ A เท่ากับค่าของ B

                Case Y + 1

                                ประโยคคำสั่งที่ให้ทำ กรณีค่าของ A เท่ากับผลลัพธ์ของ Y + 1

ตัวอย่างที่ 2           ใช้ Is เครื่องหมาบเปรียบทียบ

Select Case G$

                Case Is > B$

                                ประโยคคำสั่งที่ให้ทำ กรณีค่าของ G$ มากกว่าค่าของ B$

                Case Is <> “F”

                                ประโยคคำสั่งที่ให้ทำ กรณีค่าของ G$ มากกว่าค่าของ “F”

 

ตัวอย่างที่ 3           ใช้ To

 Select Case A

                Case B To D

                                ประโยคคำสั่งที่ให้ทำ กรณีค่าของ A เท่ากับค่าของ B ถึงค่าของ D

                Case 70 To 80

                                ประโยคคำสั่งที่ให้ทำ กรณีค่าของ A เท่ากับ 70 ถึง 80

ตัวอย่างแบบที่ 4  รวมทุกแบบ

Select Case A

                Case 11 To 20, 45, Is > B

                                ประโยคคำสั่งที่ให้ทำ กรณีค่าของ A เท่ากับ 11 ถึง 20 หรือเท่ากับ 45 หรือมากกว่าค่าของ B

 

5.3 การใช้ประโยคคำสั่ง Try … catch … Finally

                ประโยคคำสั่ง Try … catch … Finally ใช้สำหรับตรวจจับความผิดพลาดที่อาจจะเกิดขึ้นได้กับประโยคคำสั่งที่กำหนดไว้ และให้โปรแกรมยังทำงานต่อไปได้แม้จะเกิดความผิดพลาดขึ้น

                                มีรูปแบบดังนี้

 

                ความหมาย

                คำสั่ง Try จะทำให้เกิดการตรวจจับความผิดพลาดที่อาจจะเกิดขึ้นกับประโยคคำสั่งที่กำหนดไว้ ถ้าไม่เกิดความผิดพลาดจะไปทำประโยคคำสั่งหลัง Finally แล้วจบการตรวจจับด้วย End Try

                แต่ถ้าเกิดความผิดพลาดขึ้นจะไปทำประโยคคำสั่งหลัง Catch แล้วไปทำต่อที่ประโยคคำสั่งหลัง Finally และจบด้วย End Try


 


ประโยคคำสั่ง Try … catch … Finally เขียนผังงานได้ดังภาพ 5-13

 


 


ภาพ 5-12 ผังงานคำสั่ง Try … catch … Finally 

 

                ในการพิมพ์ประโยคคำสั่ง Try … catch … Finally เมื่อพิมพ์คำสั่งTry แล้ว Visual Basic จะแสดงประโยคคำสั่งทั้งหมดให้เติมเลย แต่ยังไม่มีชุด Finally ให้ ต้องพิมพ์เอง ดังภาพ 5-14

 

ภาพ 5-14 การพิมพ์ประโยคคำสั่ง Try … catch … Finally

      ตัวอย่างโปรแกรม

      ในการคำนวณ Z = X \ Y ถ้าค่าของ Y เท่ากับ 0 จะเกิดความผิดพลาดขึ้นคือ Divide by Zero แล้วโปรแกรมจะทำงานต่อไปไม่ได้ ดังนั้นจึงต้องเขียนโปรแกรม ตรวจจับ ดังภาพ 5-15

 

ภาพ 5-15 การใช้คำสั่ง Try … catch … Finally

Comments