我正在尝试编写代码来自动过滤“职务代码”列,这是一个三位数字。这个想法是让用户输入他们正在寻找的特定作业代码,宏将返回具有相应作业代码的所有行。当列中输入多个作业代码时,我遇到了问题(某些列可能只有一个作业代码,而其他列则有2个或更多)。具体来说,使用我编写的宏,它只返回包含单个作业代码的行,或者如果我在搜索中将作业代码写为 XXX ,它只返回包含的行多个工作代码 - 我永远无法让它返回两种情况。请参阅下面的我正在使用的代码:
Dim JobCode As String
JobCode = InputBox(prompt:="Which Job Code?", Title:="Job Code")
ActiveSheet.ListObjects("Table4").Range.AutoFilter Field:=6, Criteria1:="=*JobCode*", Operator:=xlOr, Criteria2:=JobCode
任何建议都将不胜感激。感谢
答案 0 :(得分:1)
当您在"
之间放置某个内容时,它会变成一个字符串,而JobCode
是一个变量。
尝试此操作(经过测试和测试)。
JobCode = InputBox(prompt:="Which Job Code?", Title:="Job Code")
ActiveSheet.Range("A1:F7").AutoFilter Field:=6, _
Criteria1:="=*" & JobCode & "*", Operator:=xlOr, Criteria2:=JobCode
截图: