我想知道是否有办法以这种方式查找和替换:
我需要找到所有包含apt
后跟数字的单元格。但数字总是不同的。那么是否有脚本或其他东西可以做到这一点?
寻找 :apt XX
(the 2 Xs representing the numbers)
替换为:app 30
所以它会定位所有的地方apt + a number
因为我有数千行,我不想这样做:
查找 : 01...
查找 : 02...
查找 : 03...
等等
谢谢!
这是您要查找的内容:
Sub findApt()
Dim count As Integer
count = Application.WorksheetFunction.CountA(Range("B:B"))
Dim i As Integer
i = 1
Do While i <= count
If (InStr(Range("B" & i), "apt")) Then
Range("B" & i) = Mid(Range("B" & i), 1, Application.WorksheetFunction.Search("apt", Range("B" & i)) - 1) & "app 30"
End If
i = i + 1
Loop
End Sub
这假设您的数据在 B 列中。享受吧!
正则表达式确实很有用,但我相信内置的“正则表达式”就足够了。从帮助文件:
使用星号查找任何字符串。例如,s*d 查找“sad”和“started”。
使用问号查找任何单个字符。例如,s?t 查找“sat”和“set”。
因此,在您的情况下,只需按 Ctrl+H 即可获得“搜索和替换”对话框,然后写入apt *
搜索框和app 30
替换框。
PS:从您的问题中不清楚是否有一些单元格包含apt
后跟数字以外的其他内容并且应该保留。如果是这种情况,请按照 Emmanuel 的建议或Scripting.Regex
在 VBA 中使用 RegEx。
我建议您安装 Find And Replace Excel Regex。允许您使用正则表达式进行查找和替换。