Решение состоит в том, чтобы использовать метод .MoveToSectionStart
объекта Slide
.
В вашей подпрограмме AddCustomSlide
добавьте одну строку:
Sub AddCustomSlide()
Dim oSlides As Slides, oSlide As Slide
Set oSlides = ActivePresentation.Slides
Set oSlide = oSlides.AddSlide(oSlides.Count - 2, GetLayout("Title Only"))
oSlide.MoveToSectionStart GetSectionNumber("Index")
End Sub
Так как вам нужен номер раздела «Индекс», я написал быструю функцию для возврата этого числа:
Private Function GetSectionNumber( _
ByVal sectionName As String, _
Optional ParentPresentation As Presentation = Nothing) As Long
If ParentPresentation Is Nothing Then
Set ParentPresentation = ActivePresentation
End If
GetSectionNumber = -1
With ParentPresentation.SectionProperties
Dim i As Long
For i = 1 To .Count
If .Name(i) = sectionName Then
GetSectionNumber = i
Exit Function
End If
Next i
End With
End Function