我有一个生成新工作表的按钮。我已经知道如何传递活动工作表的名称(单击按钮的原点)。这是我的问题。
我有一张名为" A"的工作表。单击按钮时,它将生成另一个工作表" Print"基于活动工作表" A"。它意味着" Print"中的细胞配方。表格参考" A" (例如,' A'!B1)。
现在我有一个名为" B"的工作表。因此,当我点击按钮时,它应该替换" A"在" Print"中的所有单元格的公式中工作表。我有以下代码,但似乎替换中的通配符不起作用。
For Each cell In ActiveSheet.Range("A1:C6")
cell.Formula = Replace(cell.Formula, "'*'", "'" + shtName + "'")
Next
其中shtName等于ActiveSheet(A或B)的名称。
任何帮助将不胜感激。
答案 0 :(得分:0)
For Each cell In ActiveSheet.Range("A1:C6")
cell.Formula = "'" & shtName & "'" & Right(cell.Formula, _
len(cell.Formula)-instrrev(cell.Formula, "'"))
Next
答案 1 :(得分:0)
在Google中进行多次5页搜索后,似乎"替换"功能并不能很好地使用通配符。相反,我使用"替换"方法
For Each cell In ActiveSheet.Range("A1:C6")
cell.Replace What:="'" + "*" + "'", Replacement:="'" + shtName + "'", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False,
SearchFormat:=False, ReplaceFormat:=False
Next
答案 2 :(得分:0)