如何使用vba获得power point slide尺寸?

Pra*_*thi 9 powerpoint vba powerpoint-vba

我正在做一个项目.其中我想找出"我的文本框是否已经滑出幻灯片?" .如果是,则显示错误消息.

所以我的逻辑是,如果我找到幻灯片的尺寸,那么我将在IF中使用它...其他条件如:

If textbox_position < slide_dimension  then
#Error
end if
Run Code Online (Sandbox Code Playgroud)

如果您有任何其他想法,请告诉我.

谢谢

Ste*_*erg 17

演示文稿的.PageSetup.SlideWidth和.SlideHeight属性将为您提供幻灯片的尺寸.

你的功能需要做一些事情(头顶和空中......):

Function IsOffSlide (oSh as Shape) as Boolean
  Dim sngHeight as single
  Dim sngWidth as Single
  Dim bTemp as Boolean

  bTemp = False ' by default

  With ActivePresentation.PageSetup
    sngHeight = .SlideHeight
    sngWidth = .SlideWidth
  End With

  ' this could be done more elegantly and in fewer lines 
  ' of code, but in the interest of making it clearer
  ' I'm doing it as a series of tests.
  ' If any of them are true, the function will return true
  With oSh
    If .Left < 0 Then
       bTemp = True
    End If
    If .Top < 0 Then
       bTEmp = True
    End If
    If .Left + .Width > sngWidth Then
       bTemp = True
    End If
    If .Top + .Height > sngHeight Then
       bTemp = True
    End If
  End With

  IsOffSlide = bTemp
End Function
Run Code Online (Sandbox Code Playgroud)