Red de conocimiento informático - Espacio del host - Quiero extraer las estadísticas de área de todas las polilíneas cerradas en la capa "JMD" a través de este código CAD VBA, pero no sé dónde me estoy equivocando.

Quiero extraer las estadísticas de área de todas las polilíneas cerradas en la capa "JMD" a través de este código CAD VBA, pero no sé dónde me estoy equivocando.

Public Sub create_sset_PL()

' Crea un nuevo conjunto de selección

Dim sset As AcadSelectionSet

Dim FilterType() Como Integer, FilterData() Como Variante

' p>

ReDim gpCode(2) como entero

ReDim dataValue(2) como variante

Establecer sset = ThisDrawing.SelectionSets.Add("ssl")

'Crear filtro

p> 'Este ejemplo filtra la polilínea cerrada de "JMD"

'Usar definición de matriz variable

'Filtro de polilínea

gpCode(0) = 0

dataValue(0) = "LWPolyline"

gpCode(2) = 70

dataValue(2) = 1

'Filtro de capa

gpCode(1) = 8

dataValue(1) = "JMD"

FilterType = gpCode

FilterData = dataValue

'Agregar al conjunto de selección para filtrar durante el proceso de selección

'Una vez completada la selección, presione Entrar.

sset.Select acSelectionSetAll, , , FilterType, FilterData

' Recorre el conjunto de selección y genera el recuento de área de cada objeto calificado.

Dim sum como doble

Dim i como entero

Dim s como variante

Dim PlineObj como AcadLWPolyline

suma = 0

Para cada PlineObj en sset

suma = suma PlineObj.Area

Siguiente PlineObj

ThisDrawing.Utility.Prompt "El área total de la mampostería demolida es:" amp; Str(Round(sum, 3)) amp "metros cuadrados"

sset.Delete

Fin Sub