首页 > 解决方案 > 使用 VBA 从已关闭的 Excel 工作簿中获取信息

问题描述

我正在尝试使用 excel VBA 从封闭的工作簿中提取信息,更具体地说,将封闭的 excel 工作簿中的一系列数字的总和提取到我当前的 excel 工作簿中。

我尝试了以下代码:
我想找到从 Z8 到列中最后一个 Z 单元格的值的总和。

Range("D4").Formula = "Sum('I:\Outgoing\Money Outgoing\'!$Z8:$Z)"
Set wkbk = Workbooks.Open("I:\Outgoing\Money Outgoing.xlsx\")
Range("Z7").Select
ActiveCell.FormulaR1C1 = "=SUM(Z8:Z10000)"
Range("D4").Value = GetInfoFromClosedFile(a, f, d, "Z6")

我不想打开已关闭的工作簿 Excel 文件是 Money Outgoing.xlsx 文件中只有 1 个选项卡。选项卡名称为布局 1

标签: excelvba

解决方案


在不打开工作簿的情况下,您可以使用以下代码。根据您的需要修改它。

Sub ExecuteMacroForClosedWorkbook()

Dim FldrName As String
Dim FlName As String
Dim WrkshtName As String
Dim ExecuteStringVariable As String

ExecuteStringVariable = "'" & FldrName & "\" & "[" & FlName & "]" & WrkshtName & "'!R"

ActiveCell.value = ExecuteExcel4Macro(ExecuteStringVariable & 1 & "C1") 'Execute A1 Cell and Transfer Value to Your ActiveCell

End Sub

推荐阅读