我需要运行find
和replace
,其中替换项是公式。我不知道如何获取公式来引用要替换的单元格的行号。有人可以帮助我了解其工作原理吗?
查找值是
发布未知的日期
,替换值为
=VLOOKUP(A1,'VideoIndex.xlsx'!YouTube_ALLDATA,2,FALSE)
A1
是更改每一行的值。
答案 0 :(得分:0)
您的Find()
method的妙处在于它返回一个 Range Object 。范围对象具有有用的.Row
property。
Dim Rng As Range
Set Rng = Cells.Find("NEED DATE FOR PUBLISHING UNKNOWN")
您已经设置了Rng
,现在可以使用row属性。
rng.Formula = "=VLOOKUP(A" & Rng.Row & ",'VideoIndex.xlsx'!YouTube_ALLDATA,2,FALSE)"
答案 1 :(得分:0)
据我所知,您无法使用Excel公式执行此操作。但是可以使用VBA。
此代码将为您完成此任务。 Link
的示例Sub rep()
Dim c As Range
Dim firstaddress As Range
With ActiveSheet.UsedRange
Set c = .Find("NEED DATE FOR PUBLISHING UNKNOWN", LookIn:=xlValues)
If Not c Is Nothing Then
firstaddress = c.Address
Do
c.Value = "=VLOOKUP(A" & c.Row & ",'VideoIndex.xlsx'!YouTube_ALLDATA,2,FALSE)"
Set c = .FindNext(c)
Loop While Not c Is Nothing
End If
End With
End Sub
将此代码粘贴到任何模块中,并在要查看更改的工作表激活后运行宏。