gpt4 book ai didi

vba - 从 Excel 调用 Word VBA MsgBox 函数

转载 作者:行者123 更新时间:2023-12-04 20:00:16 26 4
gpt4 key购买 nike

是否可以从 Excel VBA 调用 Word 的 MsgBox 函数?由于 MsgBox 不是 Word.Application 的一种方法,因此我在执行此操作时遇到了麻烦。

我试过这个:

Dim objWord As Word.Application
Set objWord = New Word.Application
Dim objDoc As Word.Document
Set objDoc = objWord.Documents.Add
objWord.Visible = True
objWord.Activate
Call objWord.Run("MsgBox", "Hello World") ' Or:
Call objDoc.Run("MsgBox", "Hello World")

但无论我包含哪个“调用”行,我都会收到错误“对象不支持此属性或方法”。

我正在尝试这样做,以便我可以在打开的 Word 文档前面显示一个消息框,说明文档渲染已完成。如果我只是调用 Excel 的 MsgBox,那么我必须先单击 Windows 任务栏中的闪烁按钮,然后才能看到消息框。

word 文档完全由我的 Excel 宏生成。

这可能吗?

最佳答案

我有一些功能可以导出模块并重新导入它们。它现在是为 PPT 配置的,但被我发现的 Excel 函数一起破解了。还有一种方法是使用 VBA 来编写 VBA。两者都相当先进。可能这两组功能都可以在这里使用:

http://www.cpearson.com/excel/vbe.aspx

但是,这可能是矫枉过正。这可能是您最好的选择,使用弹出窗口而不是 VBA msgBox。

Sub Test()
Dim wdApp As Object
Dim shl As Object

Set wdApp = CreateObject("Word.Application")
wdApp.Visible = True
wdApp.Activate
Set shl = CreateObject("wscript.shell")

shl.Popup ("Hello, world!")

Set shl = Nothing
Set wdApp = Nothing

End Sub

有关如何控制超时/等的更多详细信息,另请参见此处。

Whats the best way to display a message box with a timeout value from VBA?

关于vba - 从 Excel 调用 Word VBA MsgBox 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23497734/

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