小编jed*_*tic的帖子

使用vba在PowerPoint 2007中的幻灯片上定位图像

我想在Windows上的PowerPoint 2007中执行以下两项操作之一。

第一种是更改粘贴图像的默认位置。当我粘贴使用SAS制作的图形时,它将粘贴到左上角。理想情况下,我想更改默认粘贴位置。似乎没有任何简单的选择,但是我认为VBA可能是可行的。

如果不可能,那么我想编写一个VBA宏以逐步浏览每张幻灯片并更改图像位置。

感谢这个网站和其他网站,我有了一个幻灯片循环(MsgBox只是一个测试):

Sub SlideLoop()
    Dim osld As Slide

    For Each osld In ActivePresentation.Slides
        osld.Select
        MsgBox "The slide index of the current slide is: " & _
             ActiveWindow.View.Slide.SlideIndex
    Next osld

End Sub
Run Code Online (Sandbox Code Playgroud)

除此之外,我没有太多运气。我已经看到了一些代码片段,这些片段选择了幻灯片上的所有图像并对其进行裁剪或调整其大小,并且我在excelhelphq.com上找到了用于放置图像的位:

With ActiveWindow.Selection.ShapeRange
  .Left = 50 'change the number for desired x position
  .Top = 50 'change the number for desired y position
End With 
Run Code Online (Sandbox Code Playgroud)

但是我不确定如何将其集成到循环中,并且Powerpoint VBA的在线文档并不是特别可靠。一些代码处理ShapeIndex,但是我不确定如何使用它。

我应该提到的是,当我有一张图像时,一张幻灯片上只有一张图像(尽管有些幻灯片根本没有图像)。

这似乎是最好的节省时间的方法,尽管我仍然首先手动将其粘贴到PowerPoint中。

我对此表示感谢!我找不到任何能解决这个确切问题的东西。

PPT的VBA是否已逐步淘汰?感觉像微软不希望人们能够根据他们的非网上在线文档来弄清楚如何使用它。

powerpoint vba powerpoint-2007

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

powerpoint ×1

powerpoint-2007 ×1

vba ×1