我有一个简短的值列表,从 A1 到 A10:
A4 包含字符串 ab
,A5 包含公式:
="a" & "b"
如果我运行:
Sub Test1()
Dim r As Range
Set r = Range("A1:A10")
r.Replace What:="ab", Replacement:="x"
End Sub
仅修改A4。
如何让替换方法适用于这两种情况?
编辑#1:
我总是可以使用循环来逐项检查/替换,但 .Replace
速度要快得多。我想我可以构建并使用一个临时的自动过滤器,但这似乎很极端。
最佳答案
这就是我创建的:
Option Explicit
Sub TestMe()
Dim myCell As Range
Dim myText As String
For Each myCell In Worksheets(1).Range("A1:A10")
If InStr(myCell.Text, "ab") > 0 Then
myText = myCell.Text
myCell = Replace(myText, "ab", "x")
myCell.Value = myText
End If
Next myCell
End Sub
关于excel - 在公式单元格上使用 Range.Replace,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38053120/