И работало это без проблем. А тут пользователь скидывает чертёж где это не работает. Оказалось в базе чертежа записано заглавными BYLAYER BYBLOCK, а (getvar "CELTYPE") возвращает ByLayer и ByBlock Я конечно стал теперь текущий брать от туда же как и список всех, и теперь норм.