Извините, да, я бегу из Excel. Все работает сейчас, спасибо за вашу помощь.
ожусь в процессе автоматизации создания отчета PowerPoint из электронной таблицы Excel. У меня процесс работает до тех пор, пока я не вставлю таблицу.
Я вставляю таблицу в PowerPoint, используяPPApp.CommandBars.ExecuteMso ("PasteSourceFormatting")
и таблица появляется как форма на моем слайде (третья форма).
Чтобы сослаться на новую форму, которую я использовалSet pShape = Slide2.Shapes(Slide2.Shapes.Count)
но теперь, когда я вставляю,pShape
назначается «Форма 2» (не «Форма 3»). Есть ли что-то, что нужно сделать между вставкой и назначением объекта?
Код ниже, прокомментировал, где проблема возникает. (Полный код удален; доступен для просмотраВот)
'Copy tables from Excel
Set rng = ws.Range("A:A")
rng.ColumnWidth = 22.75
Set rng = ws.Range("A4:C27")
'Copy the table range
Application.CutCopyMode = False
rng.Copy
Application.Wait (Now + TimeValue("0:00:02"))
'The issue occurs here!!! '-------------------------------------
'Paste the table in to the slide
Slide2.Select
PPApp.CommandBars.ExecuteMso ("PasteSourceFormatting")
'Name the new shape object
Set pShape = Slide2.Shapes(Slide2.Shapes.Count)
pShape.Name = "Slide_2_Table_1"
pShape.LockAspectRatio = False