我在 Sheet1 中有 Tabel1,其中包含生产 Buckets 的信息。存储桶编号的示例是“APG-1710-072621-A3”,其中“072621”是日期,粗体部分发生变化。
我在名为 StandardWork "=Today()" 的工作表中的单元格 A2 中有格式为 mmddyy 的日期
当 Table1 是单元格中数据的一部分时,如何按日期过滤它?
我的尝试:
Sub Filter_Bucket()
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = StandardWork.Range("A2").Value Then
Sheet1.Range("Table1").CurrentRegion.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=StandardWork.Range("A2").Value
End If
End Sub
如果我走错了方向,请告知,并告诉我在这种情况下你会怎么做。
答案 0 :(得分:0)
当您使用高级过滤器时,您需要有一个标准。因为我不知道你在哪里创建的条件,我是用代码创建的,过滤后清除。
这是虚拟的“桌子”
将此代码放在工作表模块“StandardWork”中
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A2")) Is Nothing And IsDate(Range("A2")) Then
' Transform date to a string
Dim vDate As String: vDate = CStr(Format(Target.Value, "mmddyy"))
' Create the criteria
Sheet1.Range("D1").Value = "myDate"
Sheet1.Range("D2").Value = vDate
' Filter data on sheet1
Sheet1.Range("A1").CurrentRegion.AdvancedFilter _
Action:=xlFilterInPlace, _
CriteriaRange:=Sheet1.Range("D1:D2")
' Clear the criteria
Sheet1.Range("D1:D2").ClearContents
End If
End Sub