替换Excel中的公式中的文本

时间:2016-06-23 09:44:49

标签: excel vba excel-vba

我的电子表格包含标准数据表和一张计算表。我想设置它,以便宏搜索当前在计算中使用的数据表的名称,并将其替换为另一个数据表的名称。由于数据表具有相同的布局,公式中的其他任何内容都不需要更改,但是我正在努力!这就是我到目前为止所做的:

Sub Replace_Text()

  Dim Findtext As String
  Dim Replacetext As String
  Findtext = "Front Sheet!B2"
  Replacetext = "Front Sheet!C2"
  Worksheets("Sheet 2").Range("K11:Z91").Replace what:=Findtext, replacement:=Replacetext, lookat:=xlPart, MatchCase:=False

正如您所看到的,我正在尝试为文本创建单元格引用,以便任何人都需要更改的是在这些单元格(B2,C2)中编写的内容,以便为新数据表进行计算。 / p>

我认为错误在于引用搜索范围?由于我对使用Excel很陌生,我真的不知道还有什么可以尝试。

2 个答案:

答案 0 :(得分:1)

你将传递一个字符串,在哪里找到值,而不是值,所以findtext=worksheets("Front Sheet").range("b2").value

答案 1 :(得分:0)

你只需要获取B2和C2的内容(实际上你可以省略.value但是我觉得它更清楚): -

Sub Replace_Text()
Dim Findtext As String
Dim Replacetext As String
Findtext = Worksheets("Front Sheet").Range("B2").Value
Replacetext = Worksheets("Front Sheet").Range("c2").Value
Worksheets("Sheet2").Range("K11:Z91").Replace what:=Findtext, replacement:=Replacetext, lookat:=xlPart, MatchCase:=False
End Sub