VBA: 为 Powerpoint 设置边框 table

VBA: Set border for Powerpoint table

我尝试为现有的 powerpoint 设置边框 table。它运行良好(行号和列号作为测试数据插入到每个单元格中),但边框没有出现。我究竟做错了什么?

For i = 1 To myPresentation.Slides(w).Shapes(tableName).Table.Rows.Count
    For j = 1 To myPresentation.Slides(w).Shapes(tableName).Table.Columns.Count
        myPresentation.Slides(w).Shapes(tableName).Table.Cell(i, j).Shape.TextFrame.TextRange.Text = "R:" & i & " C:" & j
         With myPresentation.Slides(w).Shapes(tableName).Table.Cell(i, j)
            .Borders(ppBorderTop).DashStyle = msoLineSolid
            .Borders(ppBorderBottom).DashStyle = msoLineSolid
            .Borders(ppBorderLeft).DashStyle = msoLineSolid
            .Borders(ppBorderRight).DashStyle = msoLineSolid
            .Borders(ppBorderTop).ForeColor.RGB = RGB(255, 110, 0)
            .Borders(ppBorderBottom).ForeColor.RGB = RGB(255, 110, 0)
            .Borders(ppBorderLeft).ForeColor.RGB = RGB(255, 110, 0)
            .Borders(ppBorderRight).ForeColor.RGB = RGB(255, 110, 0)
            .Borders(ppBorderBottom).Weight = 1
            .Borders(ppBorderTop).Weight = 1
            .Borders(ppBorderLeft).Weight = 1
            .Borders(ppBorderRight).Weight = 1
            .Borders(ppBorderBottom).Visible = msoTrue
            .Borders(ppBorderTop).Visible = msoTrue
            .Borders(ppBorderLeft).Visible = msoTrue
            .Borders(ppBorderRight).Visible = msoTrue
        End With
    Next j
Next i   

创建一个幻灯片演示文稿并在其中只添加两个表格。然后 运行 这个代码:

Public Sub TestMe()

    Dim myTable As Table
    Dim sh As Shape

    For Each sh In ActivePresentation.Slides(1).Shapes
        Set myTable = sh.Table
        myTable.Cell(1, 1).Borders(ppBorderTop).ForeColor.RGB = RGB(255, 110, 0)
    Next sh

End Sub

应该可以。 从那里尝试进一步构建。