2

我在学习 VBA 的第一周,我正在寻找一个 VBA 代码,它可以帮助我调整粘贴到 PowerPoint 2016 中的图片的大小和重新定位。所需的图片格式详细信息如下:

大小
- 高度 = 3.39"
- 宽度 = 6.67"
- 旋转 = 0
- 缩放高度 = 62%
- 缩放宽度 = 62%
- 纵横比 = 锁定
- 相对于原始图片大小 = true

位置
- 水平位置 = 0
- 左上角
- 垂直位置 = 2.06
- 左上角

任何帮助将不胜感激。

4

2 回答 2

3

下面是对我有用的代码。感谢您的支持。

Sub ResizeAll()
For Each tSlide In ActiveWindow.Presentation.Slides
    tSlide.Select
    With tSlide.Shapes.Item(1)
    'assume a blank slide with one image added only
        .Select
        .Height = 72 * 3.39
        .Width = 72 * 6.67
    'algin middle (Horizontal Center)
        .Left = 0
        .Top = ActivePresentation.PageSetup.SlideHeight / 3.25
    End With
Next
End Sub
于 2018-06-24T20:00:22.273 回答
2

好的,所以这个宏将调整你的PowerPoint中每张图片的细节。

Sub AdjustImages()

    Dim curSlide As Slide
    Dim curShape As Shape

    For Each curSlide In ActivePresentation.Slides
        For Each curShape In curSlide.Shapes
            With curShape

                'size:
                ''1 inch = 72 points
                .Height = 72 * 3.39
                .Width = 72 * 6.67

                .ScaleHeight 0.62, msoTrue
                .ScaleWidth 0.62, msoTrue

                .LockAspectRatio = msoTrue


                'position:
                .Rotation = 0

                .Left = 0
                .Top = 2.06

                'Relative to original picture size = true

            End With
        Next curShape
    Next curSlide

End Sub

我不明白的唯一部分问题是当您提到它“相对于原始图片大小=真实”时。我似乎找不到与之匹配的属性。

于 2018-06-13T19:52:28.970 回答