我想使用模板将数据从EXCEL复制到EXCEL的POWERPOINT演示文稿中。当我使用显式路径时,它会工作。但是,我想使用一个相对路径来运行它,但是它会抛出以下错误
Sub PowerPoint()
Dim rng As Excel.Range
Dim PowerPointApp As PowerPoint.Application
Dim myPresentation As PowerPoint.Presentation
Dim mySlide As PowerPoint.Slide
Dim myShapeRange As PowerPoint.Shape
Dim Template As String
'Copy Range from Excel
Set rng = Worksheets("Contact Page").Range("C2:O38")
'Create an Instance of PowerPoint
On Error Resume Next
'Is PowerPoint already opened?
Set PowerPointApp = GetObject(class:="PowerPoint.Application")
'Clear the error between errors
Err.Clear
'If PowerPoint is not already open then open PowerPoint
If PowerPointApp Is Nothing Then Set PowerPointApp = CreateObject(class:="PowerPoint.Application")
'Handle if the PowerPoint Application is not found
If Err.Number = 429 Then
MsgBox "PowerPoint could not be found, aborting."
Exit Sub
End If
On Error GoTo 0
'Make PowerPoint Visible and Active
PowerPointApp.Visible = True
PowerPointApp.Activate
'Create a New Presentation
Template = CurDir()
Template = Template & "\TEMPLATE3.potm"
Set myPresentation = PowerPointApp.Presentations.Add
myPresentation.ApplyTemplate (Template)
'myPresentation.ApplyTemplate ("C:\Users\Oriol\Documents\3mundi\Reporting\BR\New Model\TEMPLATE3.potm")
myPresentation.PageSetup.SlideSize = ppSlideSizeOnScreen错误
我该怎么办?
发布于 2016-06-23 13:02:46
假设模板文件位于Excel文件的同一个文件夹中,则更改语句:
Template = CurDir()至:
Template = ThisWorkbook.Path发布于 2016-06-23 13:15:09
Excel文件是否与您的文件夹位于相同的位置?CurDir()返回当前保存excel文件的路径。因此,如果您的文件夹保存在子文件夹中,您也需要在路径中使用该子文件夹:
Template = CurDir()
Template = Template & "\SubFolder\TEMPLATE3.potm"https://stackoverflow.com/questions/37992271
复制相似问题