我已经计算出基于动态条件应用过滤器的代码,但我遇到的麻烦是从可能的字段中删除下拉箭头,因为我不希望用户能够更改任何他们。我的第二个问题是如何在单击命令按钮时删除过滤条件,以便重置下一个用户的数据字段。我想要注意Field:=1,_
行确实删除了下拉箭头,但仅针对第一个字段。我的代码发布在下面,任何帮助表示赞赏。
Sub test()
Worksheets("Tracker").Range("A1:L1").AutoFilter _
Field:=1, _
Criteria1:=Sheets("Start").Range("J2"), _
VisibleDropDown:=False
'This is supposed to remove the dropdown arrow from the remaining feilds in the sheet, but will not
With Range("A1:L1")
.AutoFilter Field:=1, VisibleDropDown:=False
.AutoFilter Field:=2, VisibleDropDown:=False
.AutoFilter Field:=3, VisibleDropDown:=False
.AutoFilter Field:=4, VisibleDropDown:=False
.AutoFilter Field:=5, VisibleDropDown:=False
.AutoFilter Field:=6, VisibleDropDown:=False
.AutoFilter Field:=7, VisibleDropDown:=False
.AutoFilter Field:=8, VisibleDropDown:=False
.AutoFilter Field:=9, VisibleDropDown:=False
.AutoFilter Field:=10, VisibleDropDown:=False
.AutoFilter Field:=11, VisibleDropDown:=False
.AutoFilter Field:=12, VisibleDropDown:=False
End With
End Sub
答案 0 :(得分:0)
如果您使用高级过滤器,则您的条件可以在不同的工作表上。您的结果将显示给最终用户,就像常规工作表一样,没有任何迹象表明它已被过滤。
使用高级过滤器,您的条件可以是动态的,也可以对用户隐藏。
只需录制一个宏来执行高级过滤器,将其指定给一个按钮即可离开。 Advanced Filter上有一个很棒的网站。
关键是数据表,标准和您的复制范围都可以在单独的工作表上。
祝你好运!