Excel - ซ่อนแถวที่มีค่าศูนย์ในแผ่นงานหลายแผ่น
ปัญหา
โปรดช่วยฉันสร้างแมโครใน Excelsheet ที่:
ฉันสามารถซ่อนทั้งแถวได้ถ้าค่าของเซลล์หรือ (ช่วงของค่า) มีค่าเป็นศูนย์ในหลาย ๆ แผ่น ??? ฉันหมายถึงตัวอย่างเช่นเมื่อฉันเปิดไฟล์หรือเมื่อฉันคลิกที่ด้านล่างควบคุมเพื่อเรียกใช้แมโคร
กรณีของฉันคือ:
ฉันมีไฟล์ excel หนึ่งไฟล์ที่มี 32 แผ่นสำหรับบุคลากรแต่ละคนและแต่ละแผ่นมีตาราง 3 คอลัมน์
(A, B, C) และ 26 แถว (1-26) คอลัมน์ A สำหรับข้อความคอลัมน์ B สำหรับข้อความรวมถึงคอลัมน์ C สำหรับค่า
คำขอของฉันคือการซ่อน / เลิกซ่อนทั้งแถว / s ขึ้นอยู่กับค่าในคอลัมน์ C และสำหรับแผ่นงานทั้ง 32 แผ่นโดยการกดคำสั่งหรือโดยการเปลี่ยนค่าหรืออะไรก็ตาม
สารละลาย
วัตถุประสงค์:
ในการกรอง / ซ่อนแถวในแผ่นงานทั้งหมดสำหรับค่าที่กำหนด
สมมติฐาน:
1. ตำแหน่งของคอลัมน์เหมือนกันทุกแผ่น
3. ต้องใช้ตัวกรองกับแผ่นงานทั้งหมด
3. แผ่นงานจะไม่ถูกซ่อน
4. ชีตทั้งหมดมีเซลล์อย่างน้อยหนึ่งเซลล์
ขั้นตอน
1. อ่านข้อสมมติฐาน
2. ทำสำเนาสำรอง
3. กด ALT + F11 และใส่โมดูลใหม่
4. วางรหัสและเรียกใช้
รหัส:
Sub HideRows () Dim Sheet เป็น Object Dim filterFor As Dimant Dim iFilterCol ในฐานะ Integer iFilterCol = 3 'ใช้ตัวกรองใน 3 col filterFor = InputBox ("ป้อนค่าที่จะถูกกรอง", "Filter out") สำหรับแต่ละชีตในชีต . เลือกถ้า ActiveSheet.AutoFilterMode จากนั้น Cells.Select Selection.AutoFilter สิ้นสุดหาก Cells.Select หาก ActiveSheet.AutoFilterMode = False จากนั้น Selection.AutoFilter สิ้นสุดลงหากฟิลด์ SelectionAutoFilter: = "" & ตัวกรองสำหรับผู้ดำเนินการ: ส่วนท้ายถัดไป
บันทึก
ขอบคุณ rizvisa1 สำหรับเคล็ดลับนี้ในฟอรัม