"Text Box Vertical Alignment" 到 "Middle" 通过 vba 宏在 PowerPoint 中选定的行

"Text Box Vertical Alignment" to "Middle" for a selected rows in PowerPoint through vba macro

我想创建一个宏,将 PowerPoint table 中所选 rows/cells 的“垂直对齐”更改为“中间”。谁能帮我解决这个问题。

下面附上示例快照。

下面是代码。我的代码可以完美地处理形状,但无法处理 tables。请协助。

ActiveWindow.Selection.ShapeRange.TextFrame2.VerticalAnchor = msoAnchorMiddle

要处理 table 您不能使用形状对象,但需要使用表格。 您也可以仅逐个单元格格式化,因此您需要 运行 遍历所有行和列

-----已编辑-----

要使用选定的单元格,您必须遍历所有单元格并查看它们是否被选中

Sub SelectedCells()
Dim oTbl As table
Dim iIdx As Integer
Dim iIdy As Integer
Set oTbl = ActiveWindow.Selection.ShapeRange(1).table
For iIdx = 1 To oTbl.Rows.Count
    For iIdy = 1 To oTbl.Columns.Count
        If oTbl.Cell(iIdx, iIdy).Selected Then
            With oTbl.Cell(iIdx, iIdy).Shape
            .TextFrame.VerticalAnchor = msoAnchorTop
            End With
        End If
    Next
Next
End Sub