การใช้ประโยคคำสั่ง 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 |