VBA Range.Replace不工作

所选内容是一个包含以下公式的Excel工作表单元格:

=+'[FORECAST MARZO RESTRUCTURING ITALY 20170403 V3.xlsx]DETTAGLIO'!$BA$20 

我运行下面的VBA代码:

 Selection.Replace what:="[FORECAST MARZO RESTRUCTURING ITALY 20170403 V3.xlsx]", _ Replacement:="[AQ_0617 - solo nuova 272.xlsx]" _ , LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat _ :=False, ReplaceFormat:=False 

执行代码后,我期望公式成为:

 =+'[AQ_0617 - solo nuova 272.xlsx]DETTAGLIO'!$BA$20 

但是,什么都没有发生。 任何线索?

replace方法不起作用,因为2个excel文件没有相同的工作表,即工作表'[AQ_0617 - solo nuova 272.xlsx]DETTAGLIO'不存在。 所以如果执行replace方法,最后的公式将包含一个无效的引用