Как вариант, использовать Google Apps Script
Берем набор слов
Колдуем
Получаем
=====================================================
Пример для копирования
Я использовал библиотеку
bunkat/wordfind, поэтому параметры настройки ширины и высоты необходимо брать из нее. Необходимо так же учесть, что иногда, при задании размеров, количества попыток для создания массива кроссворда может не хватить - перехватывайте это событие.