所以我要做的是计算我的图形中有多少外部参照 ;这部分很简单,这是代码
- Public Sub PMS_Xref_Extract()
- Dim ss As AcadSelectionSet, intType(0 To 1) As Integer, varData(0 To 1) As Variant
- Dim objBlkXref As AcadExternalReference, strAssemblyName As String
-
- Erase SN
- Erase CNT
- ACADSelSet ss, "AssemblyCount"
- intType(0) = 0: varData(0) = "INSERT"
- intType(1) = 2: varData(1) = "SC-*"
- ss.Select Mode:=acSelectionSetAll, filtertype:=intType, filterdata:=varData
-
- For Each objBlkXref In ss
- If objBlkXref.Layer = "3D-CONSTRUCTION" Then
- strAssemblyName = objBlkXref.EffectiveName
- IncrimentCount strAssemblyName
- End If
- Next
- Dim fso, fl, fln, s
- Dim j As Integer
- fln = "M:\PARTS-LIST\PMS.txt"
- Set fso = CreateObject("Scripting.FileSystemObject")
- If fso.FileExists(fln) Then
- fso.DeleteFile fln
- End If
- Set fl = fso.CreateTextFile(fln)
- For j = 1 To UBound(SN)
- s = CNT(j) & vbTab & SN(j)
- fl.WriteLine s
- Next
- fl.Close
- End Sub
问题是我需要在找到的第一个外部参照中计算外部参照的数量 ;我认为这应该可以做到,但我不知道 ;我知道这与嵌套块有关,但除此之外我什么都不知道 
因此,我有一个名为SC-04589-1211-162.dwg的图纸,这是开关的长名称 ;在该dwg中是另一个外部参照SC-09020.dwg,我已经使用了两次 ;我希望在运行上述代码时,返回(1)SC-04589-1211-162.dwg和(2)SC-09020.dwg的实例
|