我正在创建一个宏,该宏采用选定形状的文本并将其写到表的第一空行中。
试图插入一个Excel电子表格,但是每次我单击它时都保持滞后。
代替Im使用Grid形状生成50x1表格。问题是网格一次只能创建10行,这意味着我必须一起复制并粘贴网格。
现在的问题是,当我尝试遍历每个cellID来检查其是否完整或为空时,并且ID几乎是随机创建的,几乎没有逻辑模式。有没有一种方法可以自行设置ItemID,或者有更好的方法在visio中创建表格。
Dim vsoCharacters1 As Visio.Characters
Set vsoCharacters1 = Application.ActiveWindow.Page.Shapes_
.ItemFromID(7272).Characters 'Just copying from a cell at the moment.
vsoCharacters1.Begin = 0
vsoCharacters1.End = 2
vsoCharacters1.Copy
Dim vsoCharacters2 As Visio.Characters
For i = 7163 To 7174 'The ItemID for this grid, manually controlled
If Application.ActiveWindow.Page.Shapes.ItemFromID(i).Value = "" Then
Set vsoCharacters2 = Application.ActiveWindow.Page.Shapes_
.ItemFromID(i).Characters
ActiveWindow.SelectedText = vsoCharacters2
ActiveWindow.SelectedText.Paste
ElseIf Application.ActiveWindow.Page.Shapes.ItemFromID(i)_
.Value <> "" Then i = i + 1
End
上面的代码目前未在编译,而是出现以下错误:
“如果没有结束则阻止”