Всякие штуки типа перемешивания ответов, защиты базы вопросов нелегко реализовать. А этот пункт единственный который используется не клерком из ТБ , а сотрудниками, которым все это по барабану.
Случайная выборка, перемешивание вполне реализуемо и в calc и в base или в аналогичных. Раскрашивание полей в зависимости от правильности тоже. Вычисление и вынос оценок это вообще примитивно. База вопросов типовая, из методичек, чего это из за ради её защищать? От изменений, защищаемо. Тестилку вполне можно сделать без каких либо внешних приблуд.
Перемешивание, к примеру, в calc — ID(ответа)=RAND() с последующей сортировкой (можно и без макросов, чисто на формулах).