arrays - 获取通过遍历数组找到的单元格的单元格引用?
问题描述
我正在构建一个宏,它需要根据一列中的值查找一行,然后在该行中找到数据的开头,然后剪切该信息并将其粘贴到不同的工作表上。我遇到了第一个障碍,因为虽然我可以让我的数组遍历列并找到该值的实例,但我似乎无法获得该值的单元格引用。
我尝试使用 Range.Address 函数,但这给我带来了运行时错误 424 Object required 错误。我不知道如何获得地址。代码已经在数组中找到了值,因此它必须知道该值的存储位置。这是我到目前为止所拥有的
Dim element As Variant
Dim checker As Boolean
Dim elementAddr As String
MyArray = Range("S2:S10").Value2
For Each element In MyArray
If element = "Completed." Then
elementAddr = element.Address
Worksheets("Test").Range("A1").Value = elementAddr
Exit For
End If
Next element
End Sub
因此,除了尝试获取引用时的错误之外,数组循环工作得很好。一旦循环在数组中找到一个显示“已完成”的单元格,我如何才能将该单元格的引用作为字符串获取?
解决方案
正如 BigBen 所说,您可以使用Match()
:
Dim m
With Range("S2:S10")
m = Application.Match("Completed.",.cells, 0)
If Not IsError(m) Then Range("A1").value = .Cells(m).Address
End With
或Find()
:
Dim f As Range
Set f = Range("S2:S10").Find("Completed.", lookat:=xlWhole)
If Not f Is Nothing Then Range("A1").value = f.Address
推荐阅读
- mongodb - MongoDb/NextJs:帮助使用它的 id 更新和删除我的数据库中的特定数组
- codeigniter-4 - 过滤器在 Codeiginter 4 中不起作用
- mongodb - 从另一个数组中删除数组元素
- elasticsearch - 简单查询字符串和多匹配查询之间的区别
- react-native-ios - 命令阶段脚本执行失败,退出代码为非零,反应原生 IOS
- c++ - 如何让我的输出文件停止打印零?
- java - java - 如何使用java中的onfinalize触发器从firebase存储中获取长期持久下载链接
- javascript - 如何在 div 中插入来自 javascript 的输出数据?
- database - SQLSTATE [23502]:非空违规:7 Laravel API 错误
- ngx-pagination - 使用 Ngx-Pagination 进行表格分页