从 Powershell 编辑 Visio 自定义形状数据

Edit Visio custom shape data from Powershell

如何从 Powershell 脚本编辑 Visio 自定义形状数据?

我已经知道如何打开文档以及如何循环 sheet 中的对象,但是如何访问形状数据?

$Visio = New-Object -ComObject Visio.Application
$Doc=$Visio.Documents.Open('c:\TestVisio.vsdx')
$Page=$Doc.Pages('TestPage')
....

抱歉,我忘了这个 post。我用谷歌搜索了它,这里有一个小片段可以帮助您入门:

$doc 是您的 Visio 文件,$TabName 是您正在使用的选项卡的名称。

    $page=$doc.Pages("$TabName")
    $ObjectName='Box1'

    # Find Visio object
    foreach($shape in $page.Shapes)
    {
        if($shape.CellExists("Prop.Row_1.Value", 0))
        {
            IF ($shape.Cells("Prop.Row_1.Value").FormulaU -eq "`"$ObjectName`"")
            {
                $NewShape = $shape
                $ShapeFound = 1
                break
            }
        }
    }