Perhaps these will help....
_GetLayers:
Code:
(defun _GetLayers (/ layerNames)
;; Example: (setq myLayerList (_GetLayers))
(vlax-for oLayer
(vla-get-layers
(vla-get-activedocument
(vlax-get-acad-object)))
(setq layerNames (cons (vla-get-name oLayer) layerNames)))
(vl-sort layerNames '<))
_GetLayers (alternative):
This adaptation supplies the sub-function with the ActiveDocument Object as an argument
Code:
(defun _GetLayers (acDoc / layerNames)
;; Example:
;; (setq myLayerList
;; (_GetLayers
;; (vla-get-activedocument (vlax-get-acad-object))))
(vlax-for oLayer (vla-get-layers acDoc)
(setq layerNames (cons (vla-get-name oLayer) layerNames)))
(vl-sort layerNames '<))
_RemItems:
Code:
(defun _RemItems (removeList sourceList / newList)
;; Example: (_RemItems '("B") '("A" "B" "C"))
(setq newList sourceList)
(foreach item removeList
(setq newList (vl-remove item newList)))
newList)
** Note - The sub-functions above require that (vl-load-com) be loaded prior to calling.
HTH