Sub test()
Dim s_date As Date
Dim lo_j As ListObject
Set lo_j = mytable.ListObjects(1)
s_date = ThisWorkbook.Names("in_date").RefersToRange(1, 1)
Debug.Print s_date
With lo_j.Range
.AutoFilter Field:=10, Criteria1:=s_date
End With
End sub
在上面的代码s_date
中,在VBA即时窗口中打印为“ 31/12/2018”。
但是,当将其应用于过滤表时,将显示为“ 12/31/2018”。这将导致自动过滤器不显示任何内容。
我尝试将s_date转换为字符串,但这不能解决问题。如何在自动过滤器表中强制将s_date
设置为“ 31/12/2018”?
此外,表格第10列中的所有数据均为日期。