Vba: วิธีลบแผ่นงานโดยไม่ต้องแจ้งหรือคำเตือน


เมื่อคุณใช้วิธี การลบ ใน VBA เพื่อลบแผ่นงานเฉพาะในสมุดงาน Excel จะแสดงพรอมต์ถามว่าคุณแน่ใจหรือไม่ว่าต้องการลบแผ่นงาน

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

 SubDeleteSheets ()

'turn off display alerts
Application.DisplayAlerts = False

'delete Sheet1
Sheets(" Sheet1 ").Delete

'turn back on display alerts
Application.DisplayAlerts = True

End Sub

มาโครเฉพาะนี้จะลบแผ่นงานที่เรียกว่า Sheet1 โดยไม่ต้องแจ้งหรือกล่องคำเตือน

Application.DisplayAlerts=False บรรทัดบอก VBA ให้ปิดการแจ้งเตือนการแสดงผลทั้งหมดใน Excel

จากนั้นเราใช้วิธี ลบ เพื่อลบแผ่นงานเฉพาะ

จากนั้นเราใช้ Application.DisplayAlerts=True เพื่อเปิดใช้งานการแจ้งเตือนการแสดงผลอีกครั้ง

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ

ตัวอย่าง: ใช้ VBA เพื่อลบแผ่นงานโดยไม่พร้อมท์หรือคำเตือน

สมมติว่าเรามีสมุดงาน Excel ต่อไปนี้ประกอบด้วยแผ่นงานสามแผ่น:

ตอนนี้สมมติว่าเราต้องการสร้างมาโครเพื่อลบแผ่นงานที่เรียกว่า Sheet1

สมมติว่าเราสร้างมาโครต่อไปนี้:

 SubDeleteSheets ()

'delete Sheet1
Sheets(" Sheet1 ").Delete

End Sub

เมื่อเราเรียกใช้แมโครนี้ เราจะได้รับข้อความถามว่าเราแน่ใจหรือไม่ว่าต้องการลบชีตนี้:

อย่างไรก็ตาม เราสามารถสร้างมาโครต่อไปนี้เพื่อลบ Sheet1 โดยไม่ต้องแจ้งให้ทราบ:

 SubDeleteSheets ()

'turn off display alerts
Application.DisplayAlerts = False

'delete Sheet1
Sheets(" Sheet1 ").Delete

'turn back on display alerts
Application.DisplayAlerts = True

End Sub

เมื่อเราเรียกใช้แมโครนี้ แผ่นงานที่เรียกว่า Sheet1 จะถูกลบโดยอัตโนมัติ และไม่มีข้อความแจ้งปรากฏขึ้น:

โปรดทราบว่า Sheet1 ถูกลบออกในขณะที่อีกสองแผ่นยังคงสภาพเดิม

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีการทำงานทั่วไปอื่นๆ ใน VBA:

VBA: วิธีนับจำนวนแผ่นงานในสมุดงาน
VBA: วิธีดึงข้อมูลจากสมุดงานอื่น
VBA: วิธีแทรกหลายบรรทัด

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *