【发布时间】:2015-08-09 22:25:09
【问题描述】:
我只是需要一些方向,如果我知道去哪里看,我可以找到答案。我以编程方式将形状放在工作表上作为 db 查询的输出。这些形状有许多属性(prop.)。我想删除形状然后将这些属性设置为某些东西。我正在做的事情是给我错误。我怀疑我缺少一个步骤。这是我如何删除形状
Dim vsoShape As Visio.Shape
Dim vsoMaster As Visio.Master
For lngRow = LBound(lngRowIDs) + 1 To UBound(lngRowIDs) + 1
varRowData = vsoDataRecordset.GetRowData(lngRow)
Set vsoMaster = Visio.Documents(varRowData(14) + ".vss").Masters(varRowData(8))
dblX = dblX + 0.5
dblY = dblY + 0.5
Set vsoShape = ActivePage.Drop(vsoMaster, dblX, dblY)
'vsoShape.Cells("Prop.title").Formula = Chr(34) & varRowData(0) & Chr(34)
'vsoShape.Cells("Prop.Entitlements").Formula = Chr(34) & varRowData(1) & Chr(34)
'vsoShape.Cells("Prop.environ").Formula = Chr(34) & varRowData(2) & Chr(34)
'vsoShape.Cells("Prop.netZone").Formula = Chr(34) & varRowData(3) & Chr(34)
'vsoShape.Cells("Prop.Mem").Formula = Chr(34) & varRowData(4) & Chr(34)
'vsoShape.Cells("Prop.vcpu_cores").Formula = Chr(34) & varRowData(5) & Chr(34)
'vsoShape.Cells("Prop.sockets").Formula = Chr(34) & varRowData(6) & Chr(34)
'vsoShape.Cells("Prop.hosts").Formula = Chr(34) & varRowData(7) & Chr(34)
'vsoShape.Cells("Prop.shape").Formula = Chr(34) & varRowData(8) & Chr(34)
'vsoShape.Cells("Prop.shapeKey").Formula = Chr(34) & varRowData(15) & Chr(34)
Next lngRow
我认为我需要做的是在删除它之后获取一些形状 ID,然后使用该形状 ID 来设置值。错误似乎是它找不到属性名称。所有 prop.X 名称都是正确的。我得到的错误是
运行时错误“-2032466967 (86db03e9)”:文件意外结束
我是使用 Visio VBA 的新手。我更习惯 Excel。
迈克尔。
【问题讨论】: