excel - 通过 VBA 打开源工作簿时 VLookups 不更新
问题描述
我有一个主要工作簿,它对来自单独工作簿的数据进行计算。我在主工作簿上创建了一个按钮,用于打开源工作簿以方便用户(这样他们就不必通过目录来查找源文件)。
我将以下宏分配给按钮以打开文件:
Sub OpenIRTSumReport()
'
' Open the IRT Sum Report as given by the file path in the "START" tab
'
Dim dir As String
Dim fileName As String
dir = Worksheets("START").Range("$C$3").value
fileName = Worksheets("START").Range("$C$4").value
If dir <> "" And fileName <> "" Then
Dim path As String
path = Chr(34) & dir & "\" & fileName & Chr(34)
Workbooks.Open path
ThisWorkbook.Activate
End If
End Sub
我的问题:主工作簿中的链接仍然显示#REF!即使在按下按钮打开工作簿后也会出错。如果我手动打开源工作簿,链接更新正常,但使用 VBA 宏不会更新链接,尽管工作簿已打开。
我试过按下全部刷新按钮,我确保链接和公式设置为自动更新,我什至尝试在单元格中重新输入公式,但它仍然没有出现。
我相信#REF!我的主要工作簿链接中的 INDIRECT 函数发生错误,但它可能是 VLOOKUP,我不完全确定。只是此刻非常失落。
编辑:更多的故障排除;问题肯定出在 INDIRECT 函数上。我可以使用硬编码引用而不是 INDIRECT 将 VLOOKUP 重新输入到不同的单元格中,并且 VLOOKUP 工作正常。
干杯,马修梅尔滕斯
解决方案
推荐阅读
- tensorflow - 通过 API 对 Keras 模型进行在线预测
- react-native - 我正在尝试从 React Native 中的 post 表中获取 post 数据
- azure - 我可以在单个命令中从 databricks 笔记本返回超过 1 个值吗?
- java - @Import - Annotation 参数必须是编译时间常数
- r - R将lm模型的拟合值和残差合并到原始数据集
- javascript - 将 Nuxt 应用程序部署到域上的子目录
- c# - 如何从 C# 中的字符串中删除斜杠或如何创建包含双引号 (") 的字符串
- python - 将 ctypes 与 tesserac-ocr TessPageIteratorBoundingBox 一起使用时的异常
- powershell - 如何让 Powershell 每个子文件夹读取 2 个文件?
- authentication - 仅用于身份验证的 OpenID Connect 混合流