Почему этот цикл создания слайдов в VBA PowerPoint не работает?
-
20-09-2019 - |
Вопрос
Я пытался создать этот скрипт, который создавал бы 10 пустых слайдов, но по какой-то причине он не работает:
Sub CreatingSlides()
Dim oPresentation As Presentation
Set oPresentation = ActivePresentation
Dim oSlide As Slide
Dim oSlides As SlideRange
Dim oShape As Shape
Dim slideNumber As Integer
Dim myindex As Integer
Set myindex = 1
ActivePresentation.Slides.add(Index:=myindex, Layout:=ppLayoutBlank).Select
For myindex = 1 To 10
myindex = myindex + 1
ActivePresentation.Slides.add(Index:=myindex, Layout:=ppLayoutBlank).Select
Next myindex
End Sub
Что я здесь сделал не так?Может быть, в моем цикле чего-то не хватает?
Решение
Первый:
Set myindex = 1
должно быть:
myindex = 1
Set предназначен для ссылок на объекты.Let предназначен для значений и обычно подразумевается, но вы также можете использовать:
Let myindex = 1
который имеет тот же эффект.
Во-вторых, ослабьте линию
myindex = myindex + 1
Это то, что For/Next делает для вас.У вас могут быть другие ожидания в отношении поведения, поэтому попробуйте это, и мы сможем двигаться дальше.
Не связан с StackOverflow