我有一个宏文件,用于编辑和格式化每周一百个Excel文件,然后将其发送出去。我希望向发送出去的文件添加一些更复杂的功能。
每个发送出去的文件都需要有类似于以下代码:
Option Explicit
Sub DropDown4_Change()
With ThisWorkbook.Sheets("ExampleData").Shapes("Drop Down 4").ControlFormat
Select Case .List(.Value)
Case "Value1": SelectValue1
Case "Value2": SelectValue2
Case "Value3": SelectValue3
Case "Value4": SelectValue4
Case "Value5": SelectValue5
Case "Value6": SelectValue6
Case "Value7": SelectValue7
Case "Value8": SelectValue8
End Select
End With
End Sub
Sub SelectValue1()
ActiveSheet.ListObjects("Table4").Range.AutoFilter
ActiveSheet.ListObjects("Table4").Range.AutoFilter Field:=2, Criteria1:="<>"
End Sub
Sub SelectValue2()
ActiveSheet.ListObjects("Table4").Range.AutoFilter
ActiveSheet.ListObjects("Table4").Range.AutoFilter Field:=3, Criteria1:="<>"
End Sub
Sub SelectValue3()
ActiveSheet.ListObjects("Table4").Range.AutoFilter
ActiveSheet.ListObjects("Table4").Range.AutoFilter Field:=4, Criteria1:="<>"
End Sub
Sub SelectValue4()
ActiveSheet.ListObjects("Table4").Range.AutoFilter
ActiveSheet.ListObjects("Table4").Range.AutoFilter Field:=5, Criteria1:="<>"
End Sub
Sub SelectValue5()
ActiveSheet.ListObjects("Table4").Range.AutoFilter
ActiveSheet.ListObjects("Table4").Range.AutoFilter Field:=6, Criteria1:="<>"
End Sub
Sub SelectValue6()
ActiveSheet.ListObjects("Table4").Range.AutoFilter
ActiveSheet.ListObjects("Table4").Range.AutoFilter Field:=7, Criteria1:="<>"
End Sub
Sub SelectValue7()
ActiveSheet.ListObjects("Table4").Range.AutoFilter
ActiveSheet.ListObjects("Table4").Range.AutoFilter Field:=8, Criteria1:="<>"
End Sub
Sub SelectValue8()
ActiveSheet.ListObjects("Table4").Range.AutoFilter
ActiveSheet.ListObjects("Table4").Range.AutoFilter Field:=9, Criteria1:="<>"
End Sub
这是基于下拉框选择的基本过滤。在我的外部宏中,我需要什么代码才能使其在运行的每个Excel文件中编写此代码?这可能吗?