0

我目前正在使用具有一行日期的电子表格,但所有日期都显示为 # 因为列宽太窄。我正在尝试执行查找功能,但它仅在列足够宽以查看日期时才有效。

我有一个使用循环的工作,但是每次我调用该函数时都有数百个(如果不是数千个)日期要查看,所以这让我严重陷入困境。

有谁知道是否可以使用 .Find 函数,而日期实际上不作为日期可见?不幸的是,鉴于格式化问题,我无法充分扩大列,并且需要能够按日期访问存储在下面行中的数据。

4

1 回答 1

1

将参数 LookIn:=xlvalues 更改为 LookIn:=xlFormulas

Sub Macro1()

    'Will find dates showing ##### where column width is not wide enough
    Set a = Sheet1.Range("A:A").Find(What:=#8/22/2013#, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False)
    Debug.Print a.Address

    'Error on dates showing ##### where column width is not wide enough
    Set a = Sheet1.Range("A:A").Find(What:=#8/22/2013#, LookIn:=xlValues, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False)
    Debug.Print a.Address
End Sub
于 2013-08-13T21:44:47.243 回答