ד' שואל:
אני רוצה לעשות פקודת מאקרו שאחד משלביה הוא לפתוח את כל הסינונים.אבל שזה יעבוד רק אם קיים סינון.
תודה רבה.
תשובה:
מצ"ב הצעה לפיתרון ב-Excel על ידי קוד Macro ב-VBA.
הפרוצדורה עוברת על כל הגיליונות בחוברת העבודה.
בכל גיליון מוסרים פילטרים (במידה וקיימים) באזורים שאינם טבלאות.
לאחר מכן מבוצע מעבר על כל הטבלאות בגיליון ועבור כל טבלה מוסרים הפילטרים ומופעלים מחדש ללא סינונים.
Sub Reset_Workbook_Filters()
Dim wrsSheet As Worksheet, lstobj As ListObject
On Error Resume Next
For Each wrsSheet In ActiveWorkbook.Worksheets
wrsSheet.ShowAllData
For Each lstobj In wrsSheet.ListObjects
If lstobj.ShowAutoFilter Then
lstobj.Range.AutoFilter
lstobj.Range.AutoFilter
End If
Next
Next
On Error GoTo 0
End Sub
Dim wrsSheet As Worksheet, lstobj As ListObject
On Error Resume Next
For Each wrsSheet In ActiveWorkbook.Worksheets
wrsSheet.ShowAllData
For Each lstobj In wrsSheet.ListObjects
If lstobj.ShowAutoFilter Then
lstobj.Range.AutoFilter
lstobj.Range.AutoFilter
End If
Next
Next
On Error GoTo 0
End Sub

בברכה,
צוות אניפיט