VBA中被Find的对象只能是值,不能是引用

ABCDEF
1XY=B1=C1Y
2     


如上表格,D1和E1中内容为公式表达式

如果用Range("B1:C1").Find("F1")就可以返回C1,如果用Range("D1:E1").Find("F1")则返回Nothing


有木有好办法?


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 如果在Excel使用VBA的find函数找不到数据,则可以返回“Nothing”。例如: ``` Set foundCell = Worksheets("Sheet1").Columns(1).Find(What:="Data", LookAt:=xlWhole) If foundCell Is Nothing Then MsgBox "Data not found" Else MsgBox "Data found at " & foundCell.Address End If ``` 在上面的代码,`Find`函数在工作表“Sheet1”的第一列查找为“Data”的单元格,如果找到则返回单元格的引用,否则返回“Nothing”。您可以根据需要处理返回的结果。 ### 回答2: 在Excel使用VBA的find函数来查找数据时,如果找不到要查找的数据,VBA会返回一个特殊的数,即Nothing。我们可以利用这个特性来判断是否找到了数据。 首先,在VBA使用find函数来查找数据,可以使用以下代码: ``` Dim rng As Range Set rng = Range("A1:A10") Dim findResult As Range Set findResult = rng.Find(What:="要查找的数据", LookIn:=xlValues, LookAt:=xlWhole) If findResult Is Nothing Then MsgBox "未找到要查找的数据" Else MsgBox "找到了要查找的数据" End If ``` 这段代码首先定义了一个范围对象rng,指定要在哪个范围内查找数据。然后使用find函数在这个范围内查找指定的数据,并将结果赋给findResult对象。接着,使用if语句判断findResult是否为Nothing,如果为Nothing,则表示未找到要查找的数据,弹出一个消息框提示未找到;如果不为Nothing,则表示找到了要查找的数据,弹出一个消息框提示找到了。 通过以上方法,我们可以在Excel使用VBA的find函数来返回找不到的数据。 ### 回答3: 在Excel使用VBA的find函数进行数据查找时,如果找不到对应的数据,通常会返回一个错误消息。为了避免这种错误消息,我们可以通过适当的代码来处理这种情况。 我们可以使用VBA的find函数进行数据查找,并通过设置一个Range类型的变量来接收查找结果。然后,我们可以通过判断这个变量是否为空来确定是否找到了数据。 下面是一个示例代码,用于在Excel使用VBA的find函数进行数据查找,并处理找不到数据的情况: ```vba Sub FindData() Dim rng As Range Dim result As Range ' 在A1:A10范围查找为"ABC"的数据 Set rng = Range("A1:A10") Set result = rng.Find("ABC") ' 判断是否找到了数据 If Not result Is Nothing Then MsgBox "找到了数据!数据所在单元格为:" & result.Address Else MsgBox "未找到数据!" End If End Sub ``` 在上面的示例代码,我们使用了Range对象的Find方法来查找为"ABC"的数据。如果找到了对应的数据,将其存储在result变量;否则,result将为空。然后,我们通过判断result是否为空来确定是否找到了数据,并分别弹出相应的消息框。 通过这样的方式,我们可以在使用VBA的find函数进行数据查找时,处理找不到数据的情况,避免因为查找失败而导致的错误消息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值