我有一个关于创建宏的问题,而场景如下:
Sheet1单击Sheet1中的任何单元格后,它将根据单元格自动过滤。
。sheet2自动显示基于单击1
的双击的过滤条件例如:当我双击C1时,在Sheep2上,将自动基于A1和B1进行过滤数据,如果我在Sheet2上的C2上双重CLIK将自动根据A1和B2自动过滤数据。/p>
确实需要这里专家的帮助。
这将是您捕获单击事件所需的代码:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Debug.Print Target.Address
End Sub
这将是您需要捕获双击事件的代码:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Debug.Print Target.Address
'cancel the double click, prohibiting editng of cell per double-click
Cancel = true
End Sub
我也会帮助您进行过滤,但是由于您没有粘贴任何代码,而且我不知道您希望被过滤的数据有多么棘手,所以我将其保留给您;)
编辑:
此代码可用于Worksheet_SelectionChange
,并将根据使用范围内的有效选择设置过滤器。如果已经有过滤器,将被停用。
On Error Resume Next
If Sheet1.AutoFilterMode Then
'clear existing autofilter
Sheet1.UsedRange.AutoFilter
Else
'setup filter based on selection
Sheet1.UsedRange.AutoFilter field:=Target.Column, _
Operator:=xlFilterValues, _
Criteria1:=Target.Value, _
VisibleDropDown:=True
End If