Try this routine, it joins lines arcs and polylines. Selecting one joins all lines connected and selecting all should do what you need.
Code:
;;; PLJOIN.LSP 2011 Version
;;; Joins lines, arcs and polylines
;;; If only one object is selected it joins to all conected objects
;;; By Tom Beauford
;;; BeaufordT@LeonCountyFL.gov
;;; Macro ^C^C^P(or C:pljoin (load "pljoin.lsp"));pljoin
(defun c:pljoin (/ cmdecho peditaccept ss)
(princ "\nSelect object to join: ")
(setq cmdecho (getvar "cmdecho")
peditaccept (getvar "peditaccept")
ss (ssget '((0 . "LINE,ARC,*POLYLINE")))
)
(setvar "cmdecho" 0)
(setvar "peditaccept" 1)
(if ss
(progn
(if (= (sslength ss) 1)
(command "_.pedit" ss "_J" "_all" "" "")
(command "_.pedit" "_M" ss "" "_J" "0.0" "")
)
)
)
(setvar "cmdecho" cmdecho)
(setvar "peditaccept" peditaccept)
(princ)
)
Change the fuzz distance to whatever fits your needs.