Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

เมื่อคุณต้องการให้แบบสอบถามใน Access ขอให้ป้อนข้อมูลทุกครั้งที่คุณเรียกใช้ คุณสามารถสร้าง คิวรีพารามิเตอร์

คุณยังสามารถสร้างฟอร์มเพื่อรวบรวมค่าพารามิเตอร์ที่จะใช้เพื่อจํากัดระเบียนที่ส่งกลับสําหรับคิวรี ฟอร์ม หรือรายงาน บทความนี้จะอธิบายวิธีการใช้ฟอร์มเพื่อปรับปรุงการใช้พารามิเตอร์ในแบบสอบถาม ฟอร์ม และรายงาน

ในบทความนี้

ภาพรวม

คุณสามารถใช้เกณฑ์ในคิวรีพารามิเตอร์ใน Access เพื่อจํากัดชุดของระเบียนที่คิวรีส่งกลับ คุณอาจพบว่ากล่องโต้ตอบที่คิวรีพารามิเตอร์ให้มานั้นไม่เพียงพอสําหรับวัตถุประสงค์ของคุณ ในกรณีดังกล่าวคุณสามารถสร้างแบบฟอร์มที่ตรงกับความต้องการในการเก็บพารามิเตอร์ของคุณได้ดียิ่งขึ้น บทความนี้อธิบายวิธีการสร้างฟอร์มที่รวบรวมพารามิเตอร์คิวรีและรายงาน บทความนี้จะถือว่าคุณคุ้นเคยกับการสร้างคิวรีและการกําหนดพารามิเตอร์ในคิวรี อย่างน้อยคุณควรคุ้นเคยกับการสร้างคิวรีแบบใช้เลือกข้อมูลก่อนที่คุณจะดําเนินการต่อ

บทความนี้มีตัวอย่างของการใช้พารามิเตอร์ในแบบสอบถาม ซึ่งไม่ได้ให้การอ้างอิงที่ครอบคลุมสําหรับการระบุเกณฑ์

ใช้พารามิเตอร์ในแบบสอบถาม

การใช้พารามิเตอร์ในคิวรีเป็นเรื่องง่ายเหมือนกับการสร้างคิวรีที่ใช้เกณฑ์ คุณสามารถออกแบบคิวรีเพื่อพร้อมท์คุณสําหรับข้อมูลหนึ่งส่วน เช่น หมายเลขชิ้นส่วน หรือข้อมูลมากกว่าหนึ่งชิ้น เช่น วันที่สองวัน สําหรับแต่ละพารามิเตอร์ แบบสอบถามพารามิเตอร์จะแสดงกล่องโต้ตอบแยกต่างหากที่พร้อมท์ให้คุณใส่ค่าสําหรับพารามิเตอร์นั้น

เพิ่มพารามิเตอร์ลงในแบบสอบถาม

  1. สร้างแบบสอบถามแบบใช้เลือกข้อมูล จากนั้นเปิดแบบสอบถามใน มุมมองออกแบบ

  2. ในแถว เกณฑ์ ของเขตข้อมูลที่คุณต้องการใช้พารามิเตอร์ พิมพ์ข้อความที่คุณต้องการให้กล่องโต้ตอบพารามิเตอร์แสดงไว้ในวงเล็บเหลี่ยม ตัวอย่างเช่น:

    [วันที่เริ่ม]

    เมื่อคุณเรียกใช้แบบสอบถามพารามิเตอร์ พร้อมท์จะปรากฏในกล่องโต้ตอบโดยไม่มีวงเล็บเหลี่ยม

    คุณยังสามารถใช้นิพจน์กับพร้อมท์พารามิเตอร์ของคุณ ตัวอย่างเช่น:

    ระหว่าง [วันที่เริ่ม] และ [วันที่สิ้นสุด]

    หมายเหตุ: กล่องโต้ตอบแยกต่างหากจะปรากฏขึ้นสําหรับพร้อมท์พารามิเตอร์แต่ละพร้อมท์ ในตัวอย่างที่สอง กล่องโต้ตอบสองกล่องจะปรากฏขึ้น: กล่องหนึ่งสําหรับ วันที่เริ่มต้น และอีกกล่องสําหรับ วันที่สิ้นสุด

  3. ทำขั้นตอนที่ 2 ซ้ำสำหรับแต่ละเขตข้อมูลที่คุณต้องการเพิ่มพารามิเตอร์

คุณสามารถใช้ขั้นตอนก่อนหน้าเพื่อเพิ่มพารามิเตอร์ลงในแบบสอบถามชนิดใดก็ได้ดังต่อไปนี้: แบบใช้เลือกข้อมูล แบบตาราง แบบใช้ผนวกข้อมูล แบบใช้สร้างตาราง หรือแบบใช้ปรับปรุงข้อมูล

คุณยังสามารถเพิ่มพารามิเตอร์ในแบบสอบถามแบบร่วมได้โดยทำตามขั้นตอนต่อไปนี้:

  1. เปิดแบบสอบถามแบบร่วมในมุมมอง SQL

  2. เพิ่มส่วนคำสั่ง WHERE ที่ประกอบด้วยทุกเขตข้อมูลที่คุณต้องการให้พร้อมท์สำหรับพารามิเตอร์

    ถ้ามีส่วนคำสั่ง WHERE อยู่แล้ว ให้ตรวจสอบว่ามีเขตข้อมูลที่คุณต้องการใช้พร้อมท์พารามิเตอร์อยู่ในส่วนคำสั่งแล้วหรือไม่ ถ้ายังไม่มี ให้เพิ่มลงไป

  3. ให้ใช้พร้อมท์พารามิเตอร์แทนเกณฑ์ในส่วนคำสั่ง WHERE

ระบุชนิดข้อมูลของพารามิเตอร์

คุณยังสามารถระบุชนิดของข้อมูลที่พารามิเตอร์ควรยอมรับได้ คุณสามารถระบุชนิดข้อมูลสําหรับพารามิเตอร์ใดๆ ก็ได้ แต่เป็นสิ่งสําคัญโดยเฉพาะอย่างยิ่งในการระบุชนิดข้อมูลสําหรับข้อมูลตัวเลข สกุลเงิน หรือวันที่/เวลา เมื่อคุณระบุชนิดข้อมูลที่พารามิเตอร์ควรยอมรับ ผู้ใช้จะเห็นข้อความแสดงข้อผิดพลาดที่มีประโยชน์มากขึ้นถ้าพวกเขาใส่ชนิดข้อมูลที่ไม่ถูกต้อง เช่น การใส่ข้อความเมื่อคาดว่าสกุลเงินจะเกิดขึ้น

หมายเหตุ: ถ้ากำหนดค่าพารามิเตอร์ให้ยอมรับข้อมูลที่เป็นข้อความ การใส่ข้อมูลใดๆ จะถูกตีความเป็นข้อความ และจะไม่มีข้อความแสดงข้อผิดพลาดปรากฏขึ้น

ในการระบุชนิดข้อมูลสำหรับพารามิเตอร์ในแบบสอบถาม ทำตามขั้นตอนต่อไปนี้:

  1. เมื่อเปิดคิวรีในมุมมอง ออกแบบ บนแท็บ ออกแบบ ในกลุ่ม แสดง/ซ่อน ให้คลิก พารามิเตอร์

  2. ในกล่องโต้ตอบ พารามิเตอร์คิวรี ในคอลัมน์ พารามิเตอร์ ให้พิมพ์พร้อมท์สําหรับแต่ละพารามิเตอร์ที่คุณต้องการระบุชนิดข้อมูล ตรวจสอบให้แน่ใจว่าแต่ละพารามิเตอร์ตรงกับพร้อมท์ที่คุณใช้ในแถว เกณฑ์ ของตารางออกแบบคิวรี

  3. ในคอลัมน์ ชนิดข้อมูล ให้เลือกชนิดข้อมูลสำหรับแต่ละพารามิเตอร์

สร้างฟอร์มที่เก็บรวบรวมพารามิเตอร์

แม้ว่าคิวรีพารามิเตอร์จะมีกล่องโต้ตอบในตัวที่รวบรวมพารามิเตอร์ แต่มีฟังก์ชันการทํางานพื้นฐานเท่านั้น เมื่อใช้ฟอร์มเพื่อรวบรวมพารามิเตอร์ คุณจะได้รับฟีเจอร์ต่อไปนี้:

  • ความสามารถในการใช้ตัวควบคุมชนิดข้อมูล เช่น ตัวควบคุมปฏิทินสำหรับวันที่

  • การเก็บรักษาพารามิเตอร์ที่เก็บรวบรวมมา เพื่อให้คุณสามารถใช้กับแบบสอบถามได้มากกว่าหนึ่งแบบสอบถาม

  • ความสามารถในการใส่กล่องคำสั่งผสมหรือกล่องรายการสำหรับคอลเลกชันพารามิเตอร์ ซึ่งช่วยให้คุณสามารถเลือกจากรายการของค่าข้อมูลที่มีอยู่

  • ความสามารถในการใส่ตัวควบคุมสำหรับฟังก์ชันอื่นๆ เช่น การเปิด หรือรีเฟรชแบบสอบถาม

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

เบราว์เซอร์ของคุณไม่สนับสนุนวิดีโอ ติดตั้ง Microsoft Silverlight, Adobe Flash Player หรือ Internet Explorer 9

สร้างฟอร์มที่เก็บรวบรวมพารามิเตอร์สำหรับรายงาน

มีหลายวิธีที่คุณสามารถเข้าถึงสถานการณ์นี้ แต่เราจะแสดงเพียงเทคนิคเดียวที่ใช้แมโครเป็นส่วนใหญ่ ทําตามขั้นตอนเหล่านี้เพื่อสร้างฟอร์มที่รวบรวมพารามิเตอร์สําหรับรายงาน

ขั้นตอนที่ 1: สร้างฟอร์มที่ยอมรับการป้อนข้อมูล

  1. บนแท็บ สร้าง ในกลุ่ม ฟอร์ม ให้คลิก ออกแบบฟอร์ม

  2. ในมุมมองออกแบบ กด F4 เพื่อแสดงแผ่นคุณสมบัติ แล้วระบุคุณสมบัติฟอร์ม ดังที่แสดงในตารางต่อไปนี้

    คุณสมบัติ

    การตั้งค่า

    คำอธิบายภาพ

    ใส่ชื่อที่คุณต้องการให้ปรากฏในแถบชื่อเรื่องของฟอร์ม

    มุมมองเริ่มต้น

    ฟอร์มเดี่ยว

    อนุญาตให้ใช้มุมมองฟอร์ม

    ใช่

    อนุญาตให้ใช้มุมมองแผ่นข้อมูล

    ไม่ใช่

    อนุญาตให้ใช้มุมมอง PivotTable

    ไม่ใช่

    อนุญาตให้ใช้มุมมอง PivotChart

    ไม่ใช่

    แถบเลื่อน

    ไม่ใช่ทั้งสองอย่าง

    ตัวเลือกระเบียน

    ไม่ใช่

    ปุ่มนำทาง

    ไม่ใช่

    สไตล์เส้นขอบ

    กล่องโต้ตอบ

  3. สำหรับแต่ละพารามิเตอร์ที่คุณต้องการให้ฟอร์มเก็บรวบรวม คลิก กล่องข้อความ ในกลุ่ม ควบคุม บนแท็บ ออกแบบ

  4. ตั้งค่าคุณสมบัติของกล่องข้อความ ดังที่แสดงในตารางต่อไปนี้

    คุณสมบัติ

    การตั้งค่า

    ชื่อ

    ใส่ชื่อที่อธิบายพารามิเตอร์ เช่น วันที่เริ่ม

    รูปแบบ

    เลือกรูปแบบที่แสดงชนิดข้อมูลของเขตข้อมูลพารามิเตอร์ ตัวอย่างเช่น เลือก วันที่ทั่วไป สําหรับเขตข้อมูลวันที่

  5. บันทึกฟอร์มและตั้งชื่อ เช่น เกณฑ์ฟอร์ม

ขั้นตอนที่ 2: สร้างโค้ดโมดูลเพื่อตรวจสอบว่าฟอร์มพารามิเตอร์โหลดแล้วหรือยัง

  1. บนแท็บ สร้าง ในกลุ่ม แมโคร & โค้ด ให้คลิก มอดูล 

    โมดูลใหม่เปิดขึ้นใน Visual Basic Editor

  2. พิมพ์หรือวางโค้ดต่อไปนี้ลงใน Visual Basic Editor:

    Function IsLoaded(ByVal strFormName As String) As Boolean
    Dim oAccessObject As AccessObject
    Set oAccessObject = CurrentProject.AllForms(strFormName)
    If oAccessObject.IsLoaded Then
      If oAccessObject.CurrentView <> acCurViewDesign Then
        IsLoaded = True
      End If
    End If
    End Function
    
  3. บันทึกโมดูลด้วยชื่อที่ไม่ซ้ำ แล้วปิด Visual Basic Editor

ขั้นตอนที่ 3: สร้างแมโครที่ควบคุมฟอร์มและรายงาน

การใช้ฟีเจอร์แมโครย่อยของแมโคร Access เราสามารถกําหนดขั้นตอนที่จําเป็นทั้งหมดที่เราต้องการในแมโครเดียว เราจะสร้างแมโครย่อยสี่รายการ - เปิดกล่องโต้ตอบ ปิดกล่องโต้ตอบ ตกลง และยกเลิก เพื่อควบคุมงานต่างๆ ที่จําเป็นสําหรับขั้นตอนนี้ ใช้สกรีนช็อตด้านล่างเป็นแนวทาง สร้างแมโครใหม่ด้วยแมโครย่อยและการดําเนินการต่อไปนี้ หมายเหตุสําหรับตัวอย่างนี้แบบฟอร์มพารามิเตอร์ของเราเรียกว่า frmCriteria ปรับแมโครของคุณให้ตรงกับชื่อของฟอร์มที่คุณสร้างไว้ก่อนหน้า นอกจากนี้ คุณยังต้องแน่ใจว่าได้คลิก แสดงการดําเนินการทั้งหมด บนแท็บ ออกแบบ เพื่อดูแมโครแอคชันทั้งหมด

สกรีนช็อตของแมโคร Access ซึ่งมีสี่แมโครย่อยและแอคชัน

บันทึกและปิดแมโคร ตั้งชื่อแมโคร เช่น แมโครช่วงวันที่

ขั้นตอนที่ 4: เพิ่มปุ่มคำสั่ง ตกลง และ ยกเลิก ลงในฟอร์ม

  1. เปิดฟอร์มพารามิเตอร์ที่คุณสร้างไว้ก่อนหน้าในมุมมองออกแบบ

  2. ให้แน่ใจว่า ใช้ตัวช่วยสร้างควบคุม ในกลุ่ม ตัวควบคุม บนแท็บ ออกแบบ ไม่ถูกเลือก

  3. บนแท็บ ออกแบบ ในกลุ่ม ตัวควบคุม ให้คลิก ปุ่ม

  4. วางตัวชี้ไว้ด้านล่างของกล่องข้อความบนฟอร์มของคุณ แล้วลากเพื่อสร้างปุ่มคำสั่ง ตกลง

  5. ถ้าแผ่นคุณสมบัติไม่สามารถมองเห็นได้ ให้กด F4 เพื่อแสดงแผ่นคุณสมบัติ

  6. ตั้งค่าคุณสมบัติของปุ่ม ตกลง ดังที่แสดงในตารางต่อไปนี้

    คุณสมบัติ

    การตั้งค่า

    ชื่อ

    ตกลง

    คำอธิบายภาพ

    ตกลง

    ค่าเริ่มต้น

    ใช่

    OnClick

    ตั้งชื่อแมโคร เช่น แมโครช่วงวันที่ ตกลง

  7. สร้างปุ่มคำสั่ง ยกเลิก และตั้งค่าคุณสมบัติ ดังที่แสดงในตารางต่อไปนี้

    คุณสมบัติ

    การตั้งค่า

    ชื่อ

    ยกเลิก

    คำอธิบายภาพ

    ยกเลิก

    OnClick

    ตั้งชื่อแมโคร เช่น แมโครช่วงวันที่ ยกเลิก

  8. บันทึกและปิดฟอร์มดังกล่าว

ขั้นตอนที่ 5: ใช้ข้อมูลฟอร์มเป็นเกณฑ์ในแบบสอบถาม

  1. เปิดแบบสอบถามที่คุณสร้างไว้ก่อนหน้าในมุมมองออกแบบ

  2. ใส่เกณฑ์สําหรับข้อมูล ใช้วัตถุ Forms ชื่อของฟอร์ม และชื่อของ ตัวควบคุม:

    • ตัวอย่างเช่น ในฐานข้อมูล Access (.accdb หรือ .mdb) สำหรับฟอร์มชื่อ เกณฑ์ฟอร์ม คุณใช้นิพจน์ต่อไปนี้เพื่ออ้างอิงถึงตัวควบคุมที่ชื่อว่า วันที่เริ่ม และ วันที่สิ้นสุด ในแบบสอบถาม:

      ระหว่าง [ฟอร์ม]![เกณฑ์ฟอร์ม]![วันที่เริ่ม] และ [ฟอร์ม]![เกณฑ์ฟอร์ม]![วันที่สิ้นสุด]

ขั้นตอนที่ 6: เพิ่มแมโครแอคชันในรายงานเหตุการณ์

  1. เปิดรายงานที่คุณต้องการใช้ในมุมมองออกแบบ

  2. ถ้าแผ่นคุณสมบัติไม่สามารถมองเห็นได้ ให้กด F4 เพื่อแสดงแผ่นคุณสมบัติ

  3. ตรวจสอบให้แน่ใจว่าคุณสมบัติ แหล่งระเบียน ของรายงานกำลังใช้แบบสอบถามพารามิเตอร์ที่คุณกำหนดไว้ก่อนหน้านี้

  4. ตั้งค่าคุณสมบัติรายงานเพิ่มอีกสองคุณสมบัติ ดังที่แสดงในตารางต่อไปนี้

    คุณสมบัติ

    การตั้งค่า

    OnOpen

    ตั้งชื่อแมโคร เช่น แมโครช่วงวันที่ เปิดกล่องโต้ตอบ

    OnClose

    ตั้งชื่อแมโคร เช่น แมโครช่วงวันที่ ปิดกล่องโต้ตอบ

    ในเหตุการณ์ Open ของรายงาน Access จะเรียกใช้แอคชันที่กําหนดในแมโครย่อย เปิดกล่องโต้ตอบ ของวัตถุแมโครช่วงวันที่ ในทํานองเดียวกัน เมื่อคุณปิดรายงาน Access จะเรียกใช้แอคชันที่กําหนดไว้ในแมโครย่อย ปิดกล่องโต้ตอบ ของวัตถุแมโครช่วงวันที่

  5. บันทึกและปิดรายงานดังกล่าว

ขั้นตอนที่ 7: ลองใช้งานดู

เมื่อคุณสร้างวัตถุ Access ทั้งหมดแล้ว ก็ถึงเวลาลองใช้ เปิดรายงานของคุณ ในมุมมองรายงาน หรือ ตัวอย่างก่อนพิมพ์ และสังเกตว่าก่อนที่ Access จะแสดงรายงาน ฟอร์มพารามิเตอร์ของคุณจะเปิดขึ้นในโหมดกล่องโต้ตอบ ใส่เกณฑ์ที่จําเป็นในกล่องข้อความที่คุณสร้างไว้ก่อนหน้านี้ แล้วคลิกปุ่มคําสั่ง ตกลง บนฟอร์ม จากนั้น Access จะซ่อนฟอร์ม (Visible = No) และเปิดรายงานที่มีเฉพาะข้อมูลที่ตรงกับเกณฑ์ของคุณ ซึ่งทํางานเนื่องจากคิวรีพารามิเตอร์ที่รายงานยึดตามสามารถอ่านค่าในตัวควบคุมบนฟอร์มที่ซ่อนอยู่ได้ เมื่อคุณปิดรายงาน Access จะปิดฟอร์มพารามิเตอร์ด้วย

ด้านบนของหน้า

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ

ชุมชนช่วยให้คุณถามและตอบคําถาม ให้คําติชม และรับฟังจากผู้เชี่ยวชาญที่มีความรู้มากมาย