VBAreplace错误 – string视为公式

我试图通过用一个空格(“”)replace所有实例“<br />”来清除非常大的Excel电子表格中包含的一些文本。 我已经尝试了两种方法:在Excel中使用普通的查找/replace全部选项,并使用这个非常简单的VBAmacros:

Sub CleanUp() Application.Cells.Replace What:="<br />", Replacement:=Chr(32), LookAt:=xlPart End Sub 

在这两种情况下,我收到一条错误消息,指出: “您input的公式包含错误。有关修复常见公式问题的信息,单击帮助。要获得帮助input函数,请单击function向导(公式选项卡,函数库组)如果您不想input公式,请避免使用等号(=)或减号( – ),或在其前面加上单引号(')“。

当然,我不想input一个公式。 但是,前面的“<br />”用Excel单引号表示并不能解决问题。

即使我的searchstring不包含任何通配符(据我所知),我试图在我的macros中玩弄文字字符,看看是否会有所帮助。 它不能解决问题,但是无论如何这里是代码:

 Sub CleanUp() Dim SearchFor As String SearchFor = Chr$(60) & "br" & Chr$(32) & Chr$(47) & Chr$(62) Application.Cells.Replace What:=SearchFor, Replacement:=Chr$(32), LookAt:=xlPart End Sub 

有用的事实:

  • 我可以使用普通的查找/replace方法和VBAmacros轻松地在这个电子表格中find并replace其他string。
  • 我有其他类似的电子表格,其中发现和replace“<br />”是可能的。
  • 在我的朋友的计算机上,可以使用这两种方法查找并replace“<br />”的所有实例。

有没有人有任何想法,为什么发生这种情况? 这与我的Excel设置有关吗?

你有没有尝试过:

 Cells.Replace What:="<br/>", Replacement:=" ", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False