以编程方式访问"从右到左或#34;在Excel中的SmartArt上

时间:2014-03-28 17:47:18

标签: excel vba vsto

我正在使用VSTO开发Excel加载项,该工具生成的其中一个报表将SmartArt作为输出。现在输出是:

wrong direction

我希望输出为:

right direction

我知道Excel有这个命令,它完全正确:

right to left

但是我无法通过VBA或C#访问它。

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

我相信你需要在2010年或2013年办公室才能做到这一点。

我使用代码来获取图表的名称(在我的例子中,'图1')来自:

http://www.ozgrid.com/VBA/shapes.htm(虽然我想你可以找到更好的方法)

然后稍微修改了以下代码:

http://social.msdn.microsoft.com/Forums/office/en-US/b6af1478-045b-40b1-b05c-2cb95aa2127e/excel-2007-smart-art-manipulate-text-using-vba?forum=exceldev

Sub test()
    Dim sh As Shape
    Dim sa As SmartArt
    Set sh = ActiveWorkbook.ActiveSheet.Shapes("Diagram 1")
    With sh
        .Select
        Set sa = .SmartArt
        sa.Reverse = msoTrue
    End With
End Sub

即,从左到右'是反向'属性。参见:

http://msdn.microsoft.com/en-us/library/office/microsoft.office.core.smartart.reverse%28v=office.15%29.aspx