我已经尝试过同时使用INDEX和MATCH了。SUBSTITUTE公式都很棒,但不幸的是,这两个都不能让我达到预期的效果,并且每个都有局限性。使用MS Excel,在单元格A2中,我有一个包含多个字符和字母的文本,我想在字符串中替换它们(示例A2:{Mr。and Mrs.} John Peterson_Jones {444} 585/0000)。我也有两(2)个附加列,每个列都有标题(单元格B1:“查找内容”,单元格C1:“替换为”)。在B2:B101列(查找内容)中,我有一个单独的关键字,字母和字符的列表,如果在单元格A2中找到了特定的关键字,字母或字符,则可以;将用“替换为”列C2:C101中的相邻“查找内容-REPLACE WITH”关键字,字母或字符替换。
旧文本:{先生。和夫人}约翰·彼得森·琼斯@ {444} 585/0000新文本:约翰·彼得森·琼斯先生和夫人
查找{,},@,0,1,2,3,4,5,6,7,8,9用空白值替换查找“和” =用“&”替换查找“ _” =用-(连字符)查找“ /” =替换为-(连字符)
如果可以使用宏,则可以执行以下操作:
For i = 2 To 101
findThese = Split(Range("B" & i), ",")
replaceWith = Range("C" & i).Value
replaceWith = Trim(replaceWith)
If Not IsEmpty(findThese) Then
For Each found In findThese
found = Trim(found)
Range("A2").Replace What:=found, Replacement:=replaceWith, LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Next
Else
findThis = Range("B" & i).Value
Range("A2").Replace What:=findThis, Replacement:=replaceWith, LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End If
Next i
我以为你是这个意思:(来源:piombo.com)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句