You must define variables if your first choice is "Y" to make routine continue (your actual error is variable wid = nil) - Start VLIDE for debugging, open your *.lsp, press "Load active edit window" button, then press "Activate AutoCAD" button, type SMC in command prompt and if it brakes it will return you automatically to VLIDE => press icon "Last break" and you'll see where error occurs :
;;; Choices ;;;
(initget "Yes No")
(if (setq ch (= (getkword "\nIs this going to be a Multi-Member Unit? [Yes or No] <No>: ") "Yes"))
(progn
(initget "2 3 4")
(if (null (setq ans (getkword "\nHow many members will make up this Multi-Member Unit? (2, 3, or 4) <2> ")))
(setq ans "2")
); End if
(setq sp '(0 0)
wid (getreal "\nWhat is the width of this Member Shape? ")
dep (getreal "\nWhat is the depth of this Member Shape? ")
memshna (getstring t "\nWhat is the name of the Member Shape? ")
); End setq
); End progn
(setq sp '(0 0)
wid (getreal "\nWhat is the width of this Member Shape? ")
dep (getreal "\nWhat is the depth of this Member Shape? ")
memshna (getstring t "\nWhat is the name of the Member Shape? ")
); End setq
); End if
M.R.