Хорошо, у меня есть 16 ссылок в раскрывающемся списке, расположенном на C10 в моей электронной таблице, это изменяет информацию в диапазонах A1: Q39, после чего я хочу, чтобы диапазон A1: Q39 и диапазон A41: Q69 были скопированы как фотографии на отдельные слайды в презентации PowerPoint.
Sub ExcelRangeToPowerPoint()
Dim rng As Range
Dim rng2 As Range
Dim PowerPointApp As Object
Dim myPresentation As Object
Dim mySlide As Object
Dim myShape As Object
Set rng = ThisWorkbook.ActiveSheet.Range("A1:Q39")
Set rng2 = ThisWorkbook.ActiveSheet.Range("A41:Q69")
On Error Resume Next
Set PowerPointApp = GetObject(class:="PowerPoint.Application")
Err.Clear
If PowerPointApp Is Nothing Then Set PowerPointApp = CreateObject(class:="PowerPoint.Application")
On Error GoTo 0
Application.ScreenUpdating = False
Set myPresentation = PowerPointApp.Presentations.Add
Set mySlide = myPresentation.Slides.Add(1, 12)
Cells(10, 3) = "2018A"
rng.Copy
mySlide.Shapes.PasteSpecial DataType:=3
Set myShape = mySlide.Shapes(mySlide.Shapes.Count)
myShape.Left = 56
myShape.Top = 52
PowerPointApp.Visible = True
PowerPointApp.Activate
Application.CutCopyMode = False
Set mySlide = myPresentation.Slides.Add(1, 12)
rng2.Copy
mySlide.Shapes.PasteSpecial DataType:=3
Set myShape = mySlide.Shapes(mySlide.Shapes.Count)
myShape.Left = 56
myShape.Top = 100
PowerPointApp.Visible = True
PowerPointApp.Activate
Application.CutCopyMode = False
Это то, что я имею до сих пор, это просто повторяется 16 раз для ссылки, которая изменяется с помощью ячеек (10, 3). Когда я пытаюсь запустить макрос, он может работать для некоторых из этих ссылок, но я обычно получаю ошибку во время выполнения "shape.pastespecial: Invalid request. Указанный тип данных недоступен" Я, как вы можете сказать, довольно неопытный когда дело доходит до VBA, но я надеюсь, что кто-то сможет пролить свет на это для меня? Если вам нужна дополнительная информация, пожалуйста, дайте мне знать. Спасибо.