【问题标题】:Write in an already opened Excel workbook from Powerpoint Slide从 Powerpoint Slide 中写入已打开的 Excel 工作簿
【发布时间】:2016-02-22 10:25:38
【问题描述】:

我正在尝试使用我的 PowerPoint 演示文稿中的 VBA 在已手动打开的工作簿中写入内容。

使用 CreateObject 然后 Workbook.Open 它会打开文件的一个新实例。
我正在尝试使用在网络上的几个示例中找到的 GetObject。

这是我的代码:

Dim xlApp As Object
Dim xlWorkbook As Object

Set xlApp = CreateObject("Excel.Application")

xlApp.Visible = Trueme
Set xlWorkbook = xlApp.Workbooks.Open(ActivePresentation.Path & "\Suivi individuel.xlsx", True, False)
xlWorkbook.Sheets(1).Range("C14").Value = "Hello"

SlideShowWindows(1).View.GotoSlide nextSlide

我试过了:

Dim xlApp As Object
Dim xlWorkbook As Object

Set xlWorkbook = GetObject(ActivePresentation.Path & "\Suivi individuel.xlsx", "Excel.Application")

xlWorkbook.Sheets(1).Range("C14").Value = "Hello"

SlideShowWindows(1).View.GotoSlide nextSlide

它说运行时错误 432:自动化操作期间找不到文件名或类名。

【问题讨论】:

    标签: vba excel powerpoint


    【解决方案1】:

    试试:

    Dim xlApp As Object
    Dim xlWorkbook As Object
    
    Set xlWorkbook = GetObject(ActivePresentation.Path & "\Suivi individuel.xlsx")
    

    如果你只是想获得一个打开的 Excel 实例,那么

    Set xlApp = GetObject(,"Excel.Application")
    Set xlWorkbook = xlApp.ActiveWorkbook
    

    如果 Excel 可能无法打开,请将其包装在错误处理程序中

    见:https://support.microsoft.com/en-us/kb/288902

    【讨论】:

    • 好的,谢谢!如果我不知道文件名,只想打开第一个 Excel 工作簿,我该怎么办?
    猜你喜欢
    • 2017-01-22
    • 1970-01-01
    • 2014-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多