Macos Powerpoint VBA宏以复制对象';s大小和位置并粘贴到另一个对象
刚从Windows切换到Mac,在Windows上的ppt中,我有一个加载项,允许我复制对象的属性,包括大小和/或位置,并将其粘贴到另一个对象,有点像一个高级格式画师,可以切换要复制的属性 我没有这个插件了,但我非常想创建一个简单的宏来复制大小和位置。这是可能的吗?如果是的话,你能提供代码或者给我指一个我可以自学的资源吗Macos Powerpoint VBA宏以复制对象';s大小和位置并粘贴到另一个对象,macos,vba,powerpoint,Macos,Vba,Powerpoint,刚从Windows切换到Mac,在Windows上的ppt中,我有一个加载项,允许我复制对象的属性,包括大小和/或位置,并将其粘贴到另一个对象,有点像一个高级格式画师,可以切换要复制的属性 我没有这个插件了,但我非常想创建一个简单的宏来复制大小和位置。这是可能的吗?如果是的话,你能提供代码或者给我指一个我可以自学的资源吗 我花了大约2个小时搜索,但找不到与office mac兼容的解决方案-所以这是我最后的希望 下面是一个有效的例子。您可以调整它以满足您的特定需求 Sub CopySizeAnd
我花了大约2个小时搜索,但找不到与office mac兼容的解决方案-所以这是我最后的希望 下面是一个有效的例子。您可以调整它以满足您的特定需求
Sub CopySizeAndPosition()
' Usage: Select two shapes. The size and position of
' the first shape selected will be copied to the second.
Dim w As Double
Dim h As Double
Dim l As Double
Dim t As Double
With ActiveWindow.Selection.ShapeRange(1)
w = .Width
h = .Height
l = .Left
t = .Top
End With
With ActiveWindow.Selection.ShapeRange(2)
.Width = w
.Height = h
.Left = l
.Top = t
End With
End Sub
一个可能的更改:如果第二个选定形状设置为锁定纵横比,您可能会得到一些奇怪的结果(更改宽度会导致高度更改,更改高度也会更改宽度…PPT试图防止形状扭曲)。如果要允许失真,请在设置.Width之前添加.LockAspectRatio=False。或者,如果您希望确保不更改纵横比,请将其设置为真