gpt4 book ai didi

excel - VBA Excel : How to edit links using user cell inputs?

转载 作者:行者123 更新时间:2023-12-04 20:58:05 25 4
gpt4 key购买 nike

我正在尝试制作一个宏,其中包括更新多个单元格中的外部文件链接,其中当前单元格中的文件位置以及我想要将其更改为的位置由用户在另一个选项卡中指定。

我试图通过查找/替换来做到这一点;如果我尝试使用代码中指定的文本执行此操作:

Range("b3").Formula = Replace(Range("B3").Formula, "\\folder\file", "\\folder\newfile")

然后它将替换此文本并正确更新链接。如果我使用输入更改位置,请说 oldlocation 和 newlocation:
oldlocation= "\\folder\file"
newlocation= "\\folder\newfile"

Range("b3").Formula = Replace(Range("B3").Formula, oldlocation, newlocation)

这也可以。但是,如果我更改位置的定义(例如 B3:“\folder\file”):
oldlocation= Range("b3").text
newlocation= Range("b4").text

它不再起作用 - 通过代码中的行而没有更改或错误。我做了一个快速检查, Range("b3").text & "\folder\file"似乎都是文本字符串;在那之后我很难过。我尝试了几种不同的查找/替换格式,但结果都相同。我错过了什么?

最佳答案

问题是当您将要替换的字符串定义为

  oldlocation= Range("b3").text
oldlocation变量将具有单元格的值(您在单元格中看到的数据)而不是包含当前引用的单元格的公式,因此替换函数找不到要替换的字符串。
您必须从 Range("b3").formula 中提取要替换的位置。字符串并使用它。

关于excel - VBA Excel : How to edit links using user cell inputs?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42558822/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com