本例显示上例所附着的扩展数据。如果附着的扩展数据不是字符串(类型 1000)类型,则需要修改此代码。 Sub Ch10_ViewXData() ' 查找上例中创建的选择集 Dim sset As Object Set sset = ThisDrawing.SelectionSets.Item("SS1") ' 定义扩展数据变量以保存扩展数据信息 Dim xdataType As Variant Dim xdata As Variant Dim xd As Variant '定义索引计数器 Dim xdi As Integer xdi = 0 ' 遍历选择集中的对象 ' 并检索对象的扩展数据 Dim msgstr As String Dim appName As String Dim ent As AcadEntity appName = "MY_APP" For Each ent In sset msgstr = "" xdi = 0 ' 检索 appName 扩展数据类型和值 ent.GetXData appName, xdataType, xdata ' 如果未初始化 xdataType 变量, ' 则没有可供该图元检索的 appName 扩展数据 If VarType(xdataType) vbEmpty Then For Each xd In xdata msgstr = msgstr & vbCrLf & xdataType(xdi) _ & ": " & xd xdi = xdi + 1 Next xd End If ' 如果 msgstr 变量为 NULL,则没有扩展数据 If msgstr = "" Then msgstr = vbCrLf & "NONE" MsgBox appName & " xdata on " & ent.ObjectName & _ ":" & vbCrLf & msgstr Next entEnd Sub