1

当我选择形状或文本框时,我想实现它们将移动到幻灯片上的相同位置(底部对齐)。我的形状和文本框的高度不同,例如,对于文本框,有些只有一行,有些有多行。文本框中的文本在 ppt 中与底部对齐。

我尝试使用代码 .top 但它会将具有两行或多行的文本框移出幻灯片区域。尝试修复如果选定的形状或文本框的高度不同,那么它将从底部停留在左下角向上并停留在幻灯片上。以下是我到目前为止的代码。谢谢

 Sub PositionShape()
     Dim oshp As Shape
     On Error Resume Next

     Set oshp = ActiveWindow.Selection.ShapeRange(1)

     With oshp
         .LockAspectRatio = False
         .Left = 0.5 * 72
         .Top = 7.3 * 72
     End With

 End Sub
4

1 回答 1

5

这会将形状的底部移动到幻灯片的底部:

Sub PositionShape()
  Dim oshp As Shape
  Dim SlideHeight&
  SlideHeight& = Application.ActivePresentation.PageSetup.SlideHeight
  Set oshp = ActiveWindow.Selection.ShapeRange(1)
  With oshp
    .Left = 0.5 * 72
    .Top = SlideHeight& - .Height
  End With
 End Sub
于 2019-09-19T20:39:23.073 回答