返回列表 上一主題 發帖

[發問] 點2下快速篩選

回復 1# vinejason
不論是 WorkSheet 還是 Range 都沒有提供 DblClick 事件,
除非你VB功力很強,
否則還是只能使用系統原有的事件函數來處理.

此類需求我大都是改由 Worksheet_BeforeRightClick 事件來觸發,
頂多是要留意若最後設定 Cancel = True 則執行完直接結束,
可以避免繼續執行預設的 RightClick 程序.

TOP

本帖最後由 luhpro 於 2016-4-16 01:25 編輯

回復 4# 准提部林
嗯...
匆忙下當時我只記得翻 DblClick 事件選單沒往上拉...
是我的疏忽,抱歉.

回復 1# vinejason
現在看到 Worksheet 果然是有 BeforeDoubleClick 事件.
那麼要做到樓主的需求就容易了.
  1. Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
  2.   With Target
  3.     If .Parent.FilterMode Then ' 檢查自動篩選狀態
  4.       Selection.AutoFilter ' 是則取消自動篩選狀態
  5.     Else
  6.       Selection.AutoFilter Field:=.Column, Criteria1:=.Value, VisibleDropDown:=False ' Field : 篩選值欄位號碼, Criteria1 : 篩選值, VisibleDropDown : 自動篩選狀態時要不要顯示向下箭頭
  7.     End If
  8.   End With
  9.   Cancel = True ' 之後不要執行使用者按下 Double Click 的處理動作
  10. End Sub
複製代碼
DblClick後自動篩選.zip (9.28 KB)

另一個下載網址 :
http://www.FunP.Net/592865
1

評分人數

TOP

        靜思自在 : 真正的愛心,是照顧好自己的這顆心。
返回列表 上一主題