วันพุธที่ 15 กุมภาพันธ์ พ.ศ. 2555

ตัวแปร global ของ MS Access VBA

VBA มี Scope ของค่าตัวแปร ที่จำกัดอยู่ใน Procedure หรือ Module ซึ่งเมื่อออกจาก scope นั้น ๆ ไปแล้ว ค่าของตัวแปรจะหมดไปด้วย

ถ้าต้องการรักษาค่านั้นไว้ เพื่อนำไปใช้ใน procedure หรือที่อื่น ๆ ในฐานข้อมูล ต้องประกาศให้เป็นตัวแปรแบบ Global ซึ่งทำได้ ดังนี้

  1. ไปที่แถบ Modules สร้างโมดุลใหม่ หรือจะใช้โมดุลที่มีอยู่แล้วก็ได้
  2. เปิดโมดูล และประกาศค่าตัวแปรให้ใช้งานได้ทั้งฐานข้อมูล โดยใช้ว่า Public นำหน้า

  3. เรียกใช้งานตัวแปรนี้ ในที่ต่าง ๆ โดยไม่ต้องประกาศ Dimension (Dim) ของตัวแปรนั้น ๆ
  4. ถ้าต้องการกำหนดค่าของตัวแปรไปด้วย ก็สามารถทำได้ เช่น
    Public Const previousForm as String = "frmMain"
  5. มีข้อควรระวังคือ เมื่อเกิดมี Error ค่าของตัวแปรจะหมดไปด้วย ควรมีการ Trap Error ไว้เพื่อตรวจสอบในทุก procedure ด้วย

ไม่มีความคิดเห็น:

แสดงความคิดเห็น