Da sind gleich zwei,drei Fehler drin.
1. Du schließt mehr Klammern als du geöffnet hast / und hast keine Then-Angabe im If. So sieht es der Computer zumindest.
Code:
(if ; if_start
(ssget "_X" (list '((0 . "LWPOLYLINE,POLYLINE")(-4 . "<NOT")(8 . "E-_AUSSCHNITTS-FENSTER")(-4 . "NOT>"))(cons 410 (getvar 'CTAB))))
) ; if_end
(progn (initcommandversion)(command "_.EXPLODE" "_P" ""))
) ; ???
Würde dann so aussehn:
Code:
(if (ssget "_X" (list '((0 . "LWPOLYLINE,POLYLINE")(-4 . "<NOT")(8 . "E-_AUSSCHNITTS-FENSTER")(-4 . "NOT>"))(cons 410 (getvar 'CTAB))))
(progn (initcommandversion)(command "_.EXPLODE" "_P" ""))
)
läuft aber dennoch nicht, weil deine ssget-Filterliste falsch ist.
Die sollte immer so aussehen: Eine Liste mit dottedpair Unterliste ((8 . "0")(62 . 5)(99 . "usw."))
Deine Liste sieht aber so aus:
Eine Liste welche eine Liste mit dottedpairs enthält und eine weiter dottedpairs liste (((8 . "0")(62 . 5))(99 . "Test"))
statt
(list '((0 . "LWPOLYLINE,POLYLINE")(-4 . "<NOT")(8 . "E-_AUSSCHNITTS-FENSTER")(-4 . "NOT>"))(cons 410 (getvar 'CTAB)))
dann
(list '(0 . "LWPOLYLINE,POLYLINE")'(-4 . "<NOT")'(8 . "E-_AUSSCHNITTS-FENSTER")'(-4 . "NOT>")(cons 410 (getvar 'CTAB))
Code:
(if (ssget "_X" (list '(0 . "LWPOLYLINE,POLYLINE")'(-4 . "<NOT")'(8 . "E-_AUSSCHNITTS-FENSTER")'(-4 . "NOT>")(cons 410 (getvar 'CTAB))))
(progn (initcommandversion)(command "_.EXPLODE" "_P" ""))
); oder auch
(if (ssget "_X" (list '(0 . "LWPOLYLINE,POLYLINE")'(8 . "~E-_AUSSCHNITTS-FENSTER")(cons 410 (getvar 'CTAB))))
(progn (initcommandversion)(command "_.EXPLODE" "_P" ""))
)
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP