有时候一个工作表中每行用的公式要链接到不同的工作薄中的表格,这个时候,没有特别方便的方法来快速写出所有的公式,必须把每行中链接一一更改,下面的方法就是为了省掉这个重复劳动。
具体可以根据表格的具体形式加以调整。
下面的方法所处的情况是:第11行写了正确的公式,单元格D11的内容为“河南”,第6行的公式都是引用了一个名叫“河南.xlsx”的工作薄中的内容。从第12行到第131行是全部复制了第七行的内容,只是在每行的D列要改为其他省,也就是说,从第12行到第131行中的公式,应该改为其他省的名称,这个时候就可以用下面的代码解决了。
- Sub 替换活动工作表中各行公式中的省名()
- Application.AskToUpdateLinks = False '关闭更新数据提示
- Application.DisplayAlerts = False '关闭警告框
- Dim s, t As String
- s = "河南" '这是需要被替换掉的字符串,根据具体情况修改。
- For i = 12 To 131 Step 1 '需要替换内容的行从12行到131行,根据具体情况修改。
- t = Cells(i, "D") '用来替换的字符串在每行的D列,根据具体情况修改。
- Rows(i).Replace What:=s, Replacement:=t, LookAt:=xlPart, _
- SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
- ReplaceFormat:=False
- Next i
-
- ActiveWorkbook.Save
-
- MsgBox "已替换完毕,请检查!"
-
- End Sub
复制代码 |