首页 文章

Excel VBA到Powerpoint:将单元格复制到现有幻灯片中的文本框

提问于
浏览
0

我开始擅长将vba导出和控制信息发送到其他程序 .

任务:需要打印铭牌并将其分发给人员以标记他们的设备 . 我们有一个庞大的设备主列表,必要的信息(机器ID)只在excel表的一列 . 贴纸的模板是powerpoint .

步骤是:

  • PowerPoint应该打开模板

  • Excel应该将一个信息单元格放入一张幻灯片中 .

  • 应该使用模板幻灯片制作重复的幻灯片

  • 应该重复步骤2,除非现在程序已移动到另一个幻灯片和不同的单元格进行复制和粘贴 .

到目前为止,这是我的代码:

Sub Sammple()
   'Declaring Variables
    Dim TemplateName As String
    Dim pptpres As Object
    Dim mySlide As Object
    Dim myPresentation As Presentation
    Dim TextBox As Object
    Dim i As Integer
    Dim j As Integer

    Set pptpres = CreateObject("Powerpoint.Application")
       With pptpres
            .Visible = True
           .Presentations.Open ("FileNameHere")
            For i = 1 To 400
                .ActivePresentation.Slides(1).Duplicate.Item (1)
                Next
            For j = 3 To 514
                Cells(j, 4).Copy
                Next
        End With


End Sub

正如你所知,我已经获得了excel的代码,可以制作400张重复的幻灯片 . 我不太明白如何将excel复制文本从单元格复制到文本框到powerpoint然后一遍又一遍地进行直到它到达列范围的末尾 .

指向正确方向的任何帮助都会很棒 . 你将节省我超过1000次复制和粘贴点击 .

1 回答

  • 0

    你是说以下吗?

    当您复制了已在其中定义了文本框的PP幻灯片时,您是否要将excel单元格的值填入PP幻灯片的文本框中?

    也就是说,如果每个幻灯片中的文本框具有相同的名称,您可以通过转到Powerpoint进行检查,选择您的对象(文本框),转到格式,选择窗格,然后您可以看到文本框的名称 . 在这种情况下,它是“ Headers 1”

    Dim pp As PowerPoint.Application
    Dim PPPres As PowerPoint.Presentation
    Dim PPSlide As PowerPoint.slide
    Set pp = CreateObject("PowerPoint.Application")
    
    Set PPPres = pp.Presentations.Open ("Filenamehere")
    Set PPSlide = PPPres.Slides.Add(Slidestart, ppLayoutTitleOnly)
    
    Sheets("SHEET NAME OF EXCEL").Activate
    PPSlide.Shapes("Title 1").TextFrame.TextRange.Text = cells(i,j).text
    

相关问题