2013-11-27 284 views
0

我在Excel工作表中有一個過濾器。
Picture從VBA控制過濾器

過濾器中的一列包含日期。我希望能夠通過VBA控制過濾器,這樣我就可以根據日期配置顯示哪些行。例如,在上面的圖片中,我列出了三行。我只想看到在2月份設置了日期的行 - 這會讓我有兩行。這可能嗎?我想應該是因爲過濾器的功能識別日期年 - 月 - 日層次:
filter

錄製宏不起作用。當我應用對過濾器所做的更改時,宏記錄器將停止並顯示消息「行數過多」。

謝謝!

+0

你只允許連續24行,任何更多將導致你看到的錯誤。宏記錄器是否生成任何代碼? – Sam

回答

3

是的,你可以過濾在一個月內的所有日期:

使用自動篩選方法。 使用運營商:= xlFilterValuesCriteria2:=陣列(1, 「2013年2月13日」)

'1' 表示 '月'。這將過濾下面日期的月份中的所有日期。

其他參數可以使用:

  • 0:一年
  • 1:月
  • 2:天
  • 3小時
  • 4:分
  • 5:第二
+0

謝謝你的回答。你能確認這種方法不會與我的圖片中顯示的現有過濾器衝突嗎?具體來說,我正在研究一個將創建報告的應用程序。該報告將包含單張紙上的所有歷史數據。當消費者收到報告時,他只應該面對最近的一個月,但仍可以選擇使用包含的過濾器來移除最近一個月的過濾以顯示所有歷史數據。 – KHH

+0

該方法使用現有的自動過濾器。這與手動切換2月複選框相對應。 – Michael

+0

太好了。謝謝。 – KHH