Smartart层次结构节点 – 只能填充每个节点的一个文本框

我正尝试使用Excel VBA从Excel中的数据自动构build组织结构图。 它工作得很好,但是,我想这两个文本框填充。在大文本框中,我想填写部门的描述,在较小的文本框中,我想添加部门代码。

smartart层次结构布局

smartart层次结构布局

我无法find访问较小文本框的代码。

Do While Source.Cells(Line, 1) <> "" If Source.Cells(Line, 3) = PID Then Set ParNode = QNode If Source.Cells(Line, 4) = 1 Then Set QNode = QNode.AddNode(msoSmartArtNodeDefault, msoSmartArtNodeTypeAssistant) Else: Set QNode = QNode.AddNode(msoSmartArtNodeBelow) End If QNode.TextFrame2.TextRange.Text = Cells(Line, 6) 'here something needs to be added !!! CurPid = Source.Cells(Line, 2) If Not Found Then Found = True 'something was find 'Source.Rows(Line).Delete 'Line = Line + 1 Call AddChildNodes(QNode, Source, CurPid) Debug.Print ("CurPid" & CurPid) Debug.Print ("line" & Line) Set QNode = ParNode 'ElseIf Found Then 'it's sorted,so nothing else can be found ' Exit Do 'Else End If Line = Line + 1 Loop 

上线(你的首席执行官的文本在哪里)

  QNode.TextFrame2.TextRange.Text ***.SmartArt.AllNodes(...).Shapes(1).TextFrame2.TextRange.Text 

smartart为空的下行:

 ***.SmartArt.AllNodes(...).Shapes(2).TextFrame2.TextRange.Text 

你需要检查QNode.Shapes(2).TextFrame2.TextRange.Text工作。 如果没有,你可能需要使用.parent

资源