将幻灯片添加到部分

时间:2020-01-07 12:14:08

标签: vba powerpoint

我正在尝试将使用以下代码创建的幻灯片添加到名为“索引”的特定部分。

当前它将在最后一张幻灯片的下面放两张幻灯片,但是由于幻灯片的数量将被链接,我无法使用-2函数进行引用,因此我不得不求助于部分引用。

Public Function GetLayout( _
    LayoutName As String, _
    Optional ParentPresentation As Presentation = Nothing) As CustomLayout

    If ParentPresentation Is Nothing Then
        Set ParentPresentation = ActivePresentation
    End If

    Dim oLayout As CustomLayout
    For Each oLayout In ParentPresentation.SlideMaster.CustomLayouts
        If oLayout.Name = LayoutName Then
            Set GetLayout = oLayout
            Exit For
        End If
    Next
End Function

Sub AddCustomSlide()
    Dim oSlides As Slides, oSlide As Slide
    Set oSlides = ActivePresentation.Slides
    Set oSlide = oSlides.AddSlide(oSlides.Count - 2, GetLayout("Processwindow"))
End Sub

1 个答案:

答案 0 :(得分:0)

解决方案是使用import ftd2xx import keyboard import Main import multiprocessing def le(h): while True: print(h.recv()) def esc(h): while True: Main.mds(h) if __name__=='__main__': hRead, hWrite = multiprocessing.Pipe() p1 = multiprocessing.Process(target=esc, args = (hWrite,)) p2 = multiprocessing.Process(target=le, args=(hRead,)) p1.start() p2.start() p1.join() p2.join() 对象的.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