การยกเลิกการพิมพ์รายงานถ้าไม่มีระเบียนใดๆ อยู่

สิ่งสำคัญ:  บทความนี้เป็นการแปลด้วยเครื่อง โปรดดู ข้อจำกัดความรับผิดชอบ โปรดดูบทความฉบับภาษาอังกฤษ ที่นี่ เพื่อใช้อ้างอิง

ตามค่าเริ่มต้น คุณสามารถพิมพ์รายงานที่ไม่มีระเบียนได้ เมื่อต้องการแก้ปัญหานี้ คุณสามารถใช้แมโครหรือโค้ด Microsoft Visual Basic for Applications (VBA) เพื่อตรวจสอบการมีอยู่ของระเบียนในรายงาน และยกเลิกการดำเนินการพิมพ์ ขั้นตอนต่างๆ ในบทความนี้จะอธิบายวิธีการใช้เทคนิคทั้งสองอย่าง

คุณต้องการทำสิ่งใด

ใช้แมโครเพื่อยกเลิกการพิมพ์

ใช้โค้ด VBA เพื่อยกเลิกการพิมพ์

บางทีคุณอาจต้องการยกเลิกการพิมพ์รายงานเมื่อรายงานนั้นไม่มีระเบียนใดๆ อยู่ ตัวอย่างเช่น ถ้าคุณกำลังเริ่มขายผลิตภัณฑ์ใหม่ อาจมีช่วงเวลาหนึ่งที่คุณยังไม่ได้ลงทะเบียนการขายใดๆ ดังนั้น คุณควรพิจารณาถึงความเป็นไปได้ที่รายงานบางฉบับของคุณอาจไม่มีระเบียนรายละเอียดใดๆ และฟังก์ชันการรวม เช่น ฟังก์ชัน Count ก็อาจไม่มีสิ่งใดให้นับจำนวนได้ เมื่อต้องการจัดการสิ่งที่จะปรากฏขึ้นนั้นให้เป็นไปอย่างเรียบร้อย คุณสามารถสร้างแมโครที่ยกเลิกงานที่จะพิมพ์ได้ นอกจากนี้คุณยังสามารถเพิ่มโค้ด VBA ไม่กี่บรรทัดเพื่อดำเนินการดังกล่าวได้เช่นกัน ทั้งนี้ VBA เป็นภาษาการเขียนโปรแกรมที่ Microsoft Office Access 2007 ใช้

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

ใช้แมโครเพื่อยกเลิกการพิมพ์

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

สร้างแมโคร

  1. ในบานหน้าต่างนำทาง ให้คลิกขวารายงานที่คุณต้องการเปลี่ยนแปลง แล้วคลิก มุมมองออกแบบ

  2. บนแท็บ ดีไซน์ ในกลุ่ม แสดง/ซ่อน ให้คลิก แผ่นคุณสมบัติ

    หรือ

    คลิกสองครั้งที่กล่องในมุมบนซ้ายหรือขวาของรายงาน ขึ้นอยู่กับการตั้งค่าภูมิภาคและภาษาของคุณ

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

    กล่องโต้ตอบ เลือกตัวสร้าง จะปรากฏขึ้น

  4. คลิก ตัวสร้างแมโคร แล้วคลิก ตกลง

    ตัวออกแบบแมโครจะเริ่มทำงานและแสดงแมโครเปล่าขึ้นมา

  5. ในแถวแรกของแมโคร ให้คลิกเขตข้อมูลในคอลัมน์ แอคชัน และเลือก MsgBox จากรายการ

  6. ภายใต้ อาร์กิวเมนของแอคชัน ในส่วนล่างของตัวออกแบบแมโคร ในกล่อง ข้อความ ให้พิมพ์ข้อความสำหรับใช้เป็นข้อความแจ้งเตือนของคุณ

    ตัวอย่างเช่น คุณสามารถใส่ต่อไปนี้:มีไม่มีระเบียนการรายงานได้

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

  8. ในกล่อง ชื่อเรื่อง ให้พิมพ์ชื่อเรื่องสำหรับข้อความแจ้งเตือนของคุณ

    ตัวอย่างเช่น คุณสามารถใส่ไม่ใช่ระเบียน

    การเปลี่ยนแปลงของคุณจะปรากฏในส่วนบนของตัวออกแบบแมโคร ในคอลัมน์ อาร์กิวเมนต์ ถัดจากแอคชัน MsgBox

  9. ในส่วนบนของตัวออกแบบแมโคร ให้คลิกเซลล์ถัดไปในคอลัมน์ แอคชัน (เซลล์ที่อยู่ใต้ MsgBox โดยตรง) แล้วเลือก CancelEvent

    แมโครของคุณควรมีลักษณะดังต่อไปนี้ แม้ว่าคุณจะใช้ข้อความอื่นในอาร์กิวเมนต์ดังกล่าวก็ตาม

    แมโครตัวอย่างที่ยกเลิกการดำเนินการพิมพ์

  10. บนแท็บออกแบบ ในกลุ่มปิด คลิกบันทึกเป็น แล้ว ใช้กล่องโต้ตอบบันทึกเป็น เมื่อต้องการตั้งชื่อแมโคร

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

ทดสอบแมโครของคุณ

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

    กล่องข้อความที่จะปรากฏเมื่อไม่มีระเบียนอยู่ในรายงาน

    เมื่อคุณคลิก ตกลง เพื่อปิดข้อความดังกล่าว แอคชัน CancelEvent จะหยุดการดำเนินการพิมพ์ เนื่องจากคุณไม่ได้ระบุเหตุการณ์อื่นไว้ (เช่น การเปิดรายงานให้ดู) รายงานก็จะถูกปิด

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

ใช้โค้ด VBA เพื่อยกเลิกการพิมพ์

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

เพิ่มโค้ด VBA

  1. ในบานหน้าต่างนำทาง ให้คลิกขวารายงานที่คุณต้องการเปลี่ยนแปลง แล้วคลิก มุมมองออกแบบ

    หมายเหตุ: เมื่อต้องการทำให้เสร็จสมบูรณ์ กระบวนงานนี้ใช้รายงานที่ไม่มีระเบียน

  2. บนแท็บ ดีไซน์ ในกลุ่ม แสดง/ซ่อน ให้คลิก แผ่นคุณสมบัติ

    หรือ

    คลิกสองครั้งที่กล่องในมุมบนซ้ายหรือขวาของรายงาน ขึ้นอยู่กับการตั้งค่าภูมิภาคและภาษาของคุณ

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

    กล่องโต้ตอบ เลือกตัวสร้าง จะปรากฏขึ้น

  4. คลิก ตัวสร้างโค้ด แล้วคลิก ตกลง

    Visual Basic Editor จะเริ่มทำงานและแสดงกระบวนงานเหตุการณ์ที่ว่างเปล่า

  5. พิมพ์โค้ดต่อไปนี้ใน Visual Basic Editor เพื่อให้กระบวนงาน Report_NoData ปรากกฏให้เหมือนเช่นนี้เมื่อคุณดำเนินการเสร็จแล้ว

    Private Sub Report_NoData (Cancel As Integer)
    MsgBox "There are no records to report", vbExclamation, "No Records"
    Cancel = True
    End Sub
  6. เมื่อคุณเสร็จสิ้น คลิกไฟล์ แล้ว คลิ กบันทึก

  7. คลิกไฟล์ แล้ว คลิ กปิด และกลับไปยัง Microsoft Office Access

  8. ปิดเปิดรายงาน แล้ว คลิ กใช่ เพื่อยืนยันการบันทึก

  9. ในบานหน้าต่างนำทาง ให้คลิกขวารายงานที่คุณเพิ่งเปลี่ยนแปลง แล้วคลิก พิมพ์ คุณจะเห็นข้อความที่คล้ายต่อไปนี้

กล่องข้อความที่จะปรากฏเมื่อไม่มีระเบียนอยู่ในรายงาน

กระบวนงาน Report_NoData ใช้ฟังก์ชัน MsgBox เพื่อแสดงข้อความ There are no records to report และปุ่ม ตกลง เมื่อคุณคลิก ตกลง บรรทัดที่ว่า "Cancel=True" ในกระบวนงานจะสั่งให้ Access ยกเลิกรายงานนั้น Cancel เป็นอาร์กิวเมนต์ที่จะส่งผ่านไปยังกระบวนงานเหตุการณ์โดยอัตโนมัติและมักจะถูกตรวจสอบโดย Access เมื่อกระบวนงานเหตุการณ์เสร็จสมบูรณ์แล้ว

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

หมายเหตุ: ข้อจำกัดความรับผิดชอบของการแปลด้วยเครื่อง: บทความนี้มีการแปลด้วยระบบคอมพิวเตอร์โดยไม่มีการดำเนินการโดยบุคคล Microsoft จัดให้มีการแปลด้วยเครื่องนี้เพื่อช่วยให้ผู้ใช้ที่ไม่ได้พูดภาษาอังกฤษสามารถใช้ประโยชน์จากเนื้อหาเกี่ยวกับผลิตภัณฑ์ บริการและเทคโนโลยีของ Microsoft เนื่องจากบทความมีการแปลด้วยเครื่อง อาจมีข้อผิดพลาดด้านคำศัพท์ ไวยากรณ์หรือรูปประโยค

ขยายทักษะของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

ขอบคุณสำหรับคำติชมของคุณ!

ขอขอบคุณสำหรับคำติชมของคุณ! เราคิดว่าอาจเป็นประโยชน์ที่จะให้คุณได้ติดต่อกับหนึ่งในตัวแทนฝ่ายสนับสนุน Office ของเรา

×