首页 文章

有没有直接的方法来获取PowerPoint演示文稿中幻灯片的索引?

提问于
浏览
5

我试图以编程方式复制PowerPoint演示文稿中的幻灯片,并将其粘贴到原始文件后 .

我的第一个想法是获取旧幻灯片的索引,并将副本添加到所需的新索引,但我似乎无法找到一种直接的方法来检索该索引 . 我希望有像 Slides.IndexOf(Slide slide) 这样的东西,却找不到那样的东西 . 我最后编写了非常老派的代码,这似乎有用,但我很好奇是否有更好的方法来做到这一点 .

var slide = (PowerPoint.Slide)powerpoint.ActiveWindow.View.Slide;
var slideIndex = 0;
for (int index = 1; index <= presentation.Slides.Count; index++)
{
    if (presentation.Slides[index] == slide)
    {
        slideIndex = index;
        break;
    }
}

这是C#/ VSTO,但任何可以让我走上正确道路的输入都值得赞赏,无论是VBA还是VB!

1 回答

  • 3

    是的,你想要的是 Duplicate ,它返回一个 SlideRange . 这是VBA中的一个例子:

    Sub DuplicateSlide()
        Dim ap As Presentation
        Set ap = ActivePresentation
        Dim sl As SlideRange
        Set sl = ap.Slides(2).Duplicate
    End Sub
    

    要获得幻灯片的索引,您可以使用:

    Sub GetSlideIndex()
        Dim ap As Presentation
        Set ap = ActivePresentation
        Set sl = ap.Slides(2)
        Debug.Print sl.SlideIndex
    End Sub
    

相关问题