查找"abc",替换为"abc"+####
Find "abc", replace with "abc"+####
我有一个包含内容的数据集,例如"abc1234"、"abc2345"、"abc3456"等
"abc" 部分是常量和我找到它们的方法。
但是当我找到它们时,我想替换/删除常量部分和可变部分的 3 个字符。
例如查找 "abc"-> 结果 = "abc1234" -> 将 "abc123" 替换为 "".
我试过用下面的方法来做。使用 # 作为每个变量位置/字符的通配符。但是不起作用...
Selection.Replace what:="abc", Replacement:=""+###, _
LookAt:=xlPart, SearchOrder:=xlByColumns, MatchCase:=False, SearchFormat _
:=False, ReplaceFormat:=False
我做错了什么?
嗯,您必须将通配符放在搜索模式中,而不是替换中。另外,对于单个字符,通配符是 ?
Selection.Replace what:="abc???", Replacement:="", _
LookAt:=xlPart, SearchOrder:=xlByColumns, MatchCase:=False, SearchFormat _
:=False, ReplaceFormat:=False
'input -> output
'abc1234 -> 4
'abc2345 -> 5
'abc3456 -> 6
你试过函数replace()了吗?
Replace("abc1234", "abcd123", "") 给出 4
没有搜索和替换的另一种可能性:
Dim ra As Range
For Each ra In Selection
If Left(ra.Value, 3) = "abc" Then
ra.Value = Mid(ra.Value, 7, 50)
End If
Next
在我的 Excel
上工作
我有一个包含内容的数据集,例如"abc1234"、"abc2345"、"abc3456"等
"abc" 部分是常量和我找到它们的方法。
但是当我找到它们时,我想替换/删除常量部分和可变部分的 3 个字符。
例如查找 "abc"-> 结果 = "abc1234" -> 将 "abc123" 替换为 "".
我试过用下面的方法来做。使用 # 作为每个变量位置/字符的通配符。但是不起作用...
Selection.Replace what:="abc", Replacement:=""+###, _
LookAt:=xlPart, SearchOrder:=xlByColumns, MatchCase:=False, SearchFormat _
:=False, ReplaceFormat:=False
我做错了什么?
嗯,您必须将通配符放在搜索模式中,而不是替换中。另外,对于单个字符,通配符是 ?
Selection.Replace what:="abc???", Replacement:="", _
LookAt:=xlPart, SearchOrder:=xlByColumns, MatchCase:=False, SearchFormat _
:=False, ReplaceFormat:=False
'input -> output
'abc1234 -> 4
'abc2345 -> 5
'abc3456 -> 6
你试过函数replace()了吗?
Replace("abc1234", "abcd123", "") 给出 4
没有搜索和替换的另一种可能性:
Dim ra As Range
For Each ra In Selection
If Left(ra.Value, 3) = "abc" Then
ra.Value = Mid(ra.Value, 7, 50)
End If
Next
在我的 Excel
上工作