Hi, In working on PDF drawings, everything is inserted into layer 0, white, linetype 0, lineweight 0, per se.

Though as a kind of exploded block, it is actually on layer 0, with multiple colors, multiple linetypes, and multiple lineweights.

Then seeking for a way to separate such. I can work with LISP, so it is my first port of entry.

Anyone point me in the right direction. After going through the filter walk, layer properties filter, and such, I am back at the start, because there is no internal layer filter, per se.

Prior discussion by carlosrgns 2-14-2019 developed the following for VB: (However, I understand Lisp better than I understand VB.)

Code:
Sub Change_All_existing_To_Layer() Dim ssAll As AcadSelectionSet Dim mEntity As AcadEntity, oBlkRef As AcadEntity Dim blkAtt As String Dim ssets As AcadSelectionSets 'clear selection set Set ssets = ThisDrawing.SelectionSets On Error Resume Next Set ssAll = ssets.Item("AU2013_SS") If Err.Number <> 0 Then Set ssAll = ssets.Add("AU2013_SS") Else ssAll.Clear End If 'selects all entries in drawing Set ssAll = ThisDrawing.SelectionSets.Add("AllEntities") ssAll.Select acSelectionSetAll For Each mEntity In ssAll 'loops thru entry list If TypeOf mEntity Is AcadBlockReference Then 'picks blocks Set oBlkRef = mEntity If oBlkRef.HasAttributes Then 'picks blocks with attributes blkAtt = Get_Attribute(oBlkRef, "BLKSET.FURNISH") If blkAtt = "\W0.7500;E" Then 'picks "existing" devices mEntity.layer = "STAGE.NOTES.SD" End If End If End If Next ssAll.Clear 'cleans the selection set ssAll.Delete Set ssAll = Nothing ThisDrawing.Regen acActiveViewport 'regenerates the drawing End Sub



- - - Updated - - -

the prior post:
Capture.JPG