工作需要替换工作簿中所有工作表中的某个字符串为另一个字符串,使用Excel的宏录制功能,出来结果差不多是这样子:
Sub replaceAll() Cells.Replace What:="ln:goto/LNFC/dossen?oid=2517235", Replacement:= _ "ln:goto/LNFC/dossen?oid=2517225", LookAt:=xlPart, SearchOrder:=xlByRows, _ MatchCase:=False, MatchByte:=False, FormulaVersion:=xlReplaceFormula2 End Sub
一执行发现还是有问题,部分工作簿不能完全替换。
还是要将所有工作簿激活执行一下,修改代码
Sub replaceAll() Dim ws As Worksheet For Each ws In ActiveWorkbook.Worksheets ws.Cells.Replace What:="AAA", Replacement:= _ "BBB", LookAt:=xlPart, SearchOrder:=xlByRows, _ MatchCase:=False, MatchByte:=False, FormulaVersion:=xlReplaceFormula2 Next ws MsgBox "done" End Sub
ref: