Я действительно борюсь с этим, я, похоже, не могу найти причину, по которой мой код не работает:
Dim i1 As Integer
Dim PPapp As Object, XLapp As Object
Dim slide1 As Slide, slide2 As Slide, slide3 As Slide
Dim PPoutput As Presentation
Dim output_table As ShapeRange
Set PPapp = New PowerPoint.Application
Set XLapp = Excel.Application
Set PPoutput = PPapp.Presentations.Open("Q:\SDPMaler\blank.potx", untitled:=msoTrue, withwindow:=msoTrue)
Set slide1 = ppoutput.Slides.AddSlide(1, ppoutput.SlideMaster.CustomLayouts(13))
XLapp.ActiveWorkbook.Sheets("PPT output").Range("y4:ae11").Copy
Set output_table = slide1.Shapes.PasteSpecial(ppPasteJPG, msoFalse, "", 1, "", msoTrue)
И здесь мой код не работает: макрос создает powerpoint, добавляетслайд в правильном макете и даже вставляет таблицу, как изображение
.PasteSpecial(DataType:=ppPasteOLEObject, link:=msoTrue)
работает так же, но с любым из них я получаю «Ошибка времени выполнения 13: несоответствие типов» в последней строкевставил код.Несмотря на то, что № 13, как правило, легко исправить, я действительно застрял на этот раз.Надеюсь, кто-нибудь может мне помочь Спасибо PS: я использую Office 2010 и запускаю макрос в Excel