I got it working with some help.
The solution was very simple!
(defun c:SetRole (/ ss)
(setq MRole ((lambda ( input ) (if (eq "" input) MRole input))(getstring (strcat "\nEnter Model Role: <" (setq MRole (cond ( MRole ) ( "Column" ))) "> or ?: ")))
);setq
(if(eq MRole "?")
(progn
(startapp "explorer" (findfile "AST Roles.xlsx"))
);progn
(progn ;else
(setq ss (ssget)
nn (sslength ss) i 0
);setq
(while (< i nn)
(progn
(setq ee (cdr (car (entget (ssname ss i)))))
(hype_setBeamEntity ee)
(hype_getBeamData)
(if (= 0 (hype_getError))
(progn
(hype_setBeamRole MRole)
(hype_modifybeam)
);progn
(progn
(hype_setPlateEntity ee)
(hype_getPlateData)
(if (= 0 (hype_getError))
(progn
(hype_setPlateRole MRole)
(hype_modifyplate)
);progn
);if
);progn
);if
(setq i (1+ i))
) ;progn
) ;while
) ;progn else
) ;if
(princ)
)