gpt4 book ai didi

excel - 用于将 Excel 工作簿打开到启用加载项的特定工作表的 Visual Basic 脚本

转载 作者:行者123 更新时间:2023-12-03 03:29:43 25 4
gpt4 key购买 nike

在安装了 64 位 Microsoft Office Professional Plus 2016 的 Windows 7 Enterprise x64 主机上工作。

我想创建 Visual Basic 脚本 (我的 Windows 桌面上的文件)启动 Microsoft Excel,打开启用宏的 Excel 工作簿文件“Workbook.xlsm”,并选择/激活该工作簿中的工作表“XYZ”。因此,我需要以下 VB 脚本:

' File: test.vbs
' Opens Excel workbook "Workbook.xlsm" to worksheet "XYZ"
Set objXl = CreateObject("Excel.Application")
Set ObjWb = objXl.Workbooks.Open("C:\Path\To\Workbook.xlsm")
objXl.Goto ObjWb.Sheets("XYZ").Range("A1")
objXl.Application.Visible = True

此脚本成功启动 Excel、打开指定的工作簿并选择指定的工作表。

但是,所有包含调用外接程序模块中定义的一个或多个函数的公式的工作表单元格都已损坏;这些单元格都包含错误值#NAME?

如果我手动关闭并重新打开工作簿(不使用脚本),则包含调用外接程序模块中定义的一个或多个函数的公式的工作表单元格都可以正常工作。

所以我想知道如何修改我的 Visual Basic 脚本,以便在启动 Excel、打开工作簿并选择所需的工作表后,工作簿的工作表单元格可以成功调用加载项模块中定义的函数。

最佳答案

根据 Tim Williams 的评论,Microsoft 的这篇文章描述了此问题并解释了如何解决它:

Add-ins do not load when using the CreateObject command in Excel

' File: test.vbs
' Opens Excel workbook "Workbook.xlsm" to worksheet "XYZ"
Set objXL = CreateObject("Excel.Application")
Set ObjWB = objXL.Workbooks.Open("C:\Path\To\Workbook.xlsm")

' Open add-in file 'AddIn.xlam'
objXL.Workbooks.Open ("C:\Path\To\AddIn.xlam")

objXL.Goto ObjWB.Sheets("XYZ").Range("A1")
objXL.Application.Visible = True

' Maximize the window after it opens
objXL.Application.WindowState = xlMaximized

Set objWB = Nothing
Set objXL = Nothing

关于excel - 用于将 Excel 工作簿打开到启用加载项的特定工作表的 Visual Basic 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46383814/

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