首页 文章

引用放置在PowerPoint中的Excel工作表

提问于
浏览
0

我已使用“插入”选项卡 - >对象 - > Microsoft Excel 97-2003工作表(新建)选项将Excel工作表添加到PowerPoint 2010文档中 . 我想在我的PowerPoint的另一张幻灯片中引用Excel工作表中的一些单元格 . 有没有办法做到这一点?

目的是我有一个坚持PPT报告的客户,除了我需要使用Excel来创建所需的信息 . 我不是不断打开两个文档并将信息从Excel工作表传输到PPT幻灯片,而是希望合并到一个文档中,从而将Excel工作表添加到PPT文件中 .

我无论如何都不是VBA的专家,但是我知道如果我需要使用VBA来实现这一点,我就会陷入困境 .

我上传了一个例子的图片(我希望) . 在幻灯片1上,我使用插入的Excel工作表填充了三个单元格 . 幻灯片2是我需要引用这些单元格的文本框(文本框为红色文本) . 这些单元格中的信息将从一周开始变化,我需要幻灯片2中的文本框进行更新 . 任何帮助,将不胜感激 .

enter image description here

enter image description here

1 回答

  • 1

    使用PowerPoint中的选择窗格来识别嵌入对象的名称,并引用它,然后使用 OLEFormat.Object 来获取 Workbook 对象的句柄,并从那里开始使用 Excel.Workbook 类的实例,这样所有熟悉的Excel属性和方法应该是可用的:

    Option Explicit
    'Requires reference to Excel
    Sub populate_text_box()
    Dim obj As Object
    Dim tb As Shape 'TextBox
    Dim wb As Excel.Workbook
    Dim ws As Excel.Worksheet
    Set obj = ActivePresentation.Slides(1).Shapes("Object 3")
    
    
    Set wb = obj.OLEFormat.Object
    Set ws = wb.Sheets(1)
    
    Set tb = ActivePresentation.Slides(2).Shapes("TextBox 1") 'Modify slide/shape name as needed
    tb.TextFrame2.TextRange.Text = ws.Range("B2").Value  
    
    Set tb = ActivePresentation.Slides(2).SHapes("TextBox 2") 'Modify slide/shape name as needed
    tb.TextFrame2.TextRange.Text = ws.Range("D2").Value
    
    Set tb = ActivePresentation.Slides(2).SHapes("TextBox 3") 'Modify slide/shape name as needed
    tb.TextFrame2.TextRange.Text = ws.Range("F2").Value
    
    End Sub
    

相关问题