【问题标题】:VISIO count shapes in containerVISIO 计算容器中的形状
【发布时间】:2014-04-25 13:31:53
【问题描述】:

我对 VBA 很生疏,我希望有人能指出我正确的方向,或者帮助我。我要做的是运行一个宏,该宏将循环遍历工作表上的每个活动容器,然后计算该容器中的形状数量。然后我想用形状的数量更新容器的形状数据中的一个字段。

这是我目前所拥有的:

Public Sub countContainers()
    Dim vsoPage As Visio.Page
    Dim vsoDocument As Visio.Document
    Dim vsoDocuments As Visio.Documents
    Dim vsoPages As Visio.Pages
    Dim vsoContainerShape As Visio.Shape

    Dim containerId As Variant

    For Each containerId In vsoPage.GetContainers(visContainerIncludeNested)
        Set vsoContainerShape = vsoPage.Shapes.ItemFromID(containerId)
        Debug.Print vsoContainerShape.NameU
    Next    
End Sub    

我得到的错误是Object Variable or With Block variable not set

有什么想法吗?

【问题讨论】:

    标签: vba shape visio


    【解决方案1】:

    错误是因为您声明了vsoPage,但您从未将其分配给文档中的任何页面。

    添加这样一行来初始化它,错误就消失了:

    Set vsoPage = ActivePage
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-06
      • 2015-11-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多