Вставка таблицы Excel в AutoCAD с сохранением форматирования
#excel #autocad #vba
Недавно в чате для общения спросили:
Как перенести таблицу из Excel в AutoCAD с объединёнными ячейками и своим форматированием?
Задача понятная и востребованная:
перенести таблицу из Excel в AutoCAD, сохранив не только данные, но и всё форматирование — объединённые ячейки, размеры, шрифты, цвета.
Готовых решений "из коробки" в интернете не нашлось, но я обнаружил отличную панель инструментов от zvyagaaa.
Она уже умела:
• переносить выделенный диапазон как таблицу AutoCAD (с ограничениями, которые я поправил)
• сохранять объединённые ячейки
• приблизительно сохранять размеры
🔥 Хорошая база! Но хотелось большего - полноценного переноса форматирования.
✂️✂️✂️✂️✂️
Доработка
Я взял панель за основу доработал логику и написал новый макрос Excel2AcadFormatted.
Что умеет новый макрос:
✅ Размеры ячеек - ширина и высота переносятся в миллиметры (на сколько это возможно)
✅ Объединённые ячейки - любая конфигурация, включая первую строку и столбец
✅ Шрифт - имя, размер, курсив (создаются соответствующие стили в AutoCAD)
✅ Цвет текста - полная палитра RGB
✅ Цвет заливки фона - полная палитра RGB
✅ Выравнивание - по горизонтали и вертикали
✅ Границы - толщина и цвет для каждой стороны ячейки
Технические детали:
• единицы AutoCAD = миллиметры (1 ед. = 1 мм)
• коэффициент размера шрифта настраивается в коде (разные шрифты - разные коэффициенты)
• прогресс отображается в строке состояния Excel
• результат выводится в командную строку AutoCAD
• для прерывания - Ctrl+Break
Как использовать:
1. откройте Excel с таблицей и AutoCAD с чертежом
2. выделите нужный диапазон ячеек в Excel
3. нажмите кнопку "В AutoCAD (форматирование)" на панели
4. укажите точку вставки в AutoCAD
5. дождитесь завершения - таблица готова!
Ограничения:
• стили линий границ - только сплошная (пунктир преобразуется в сплошную)
• частичное форматирование текста в ячейке - берётся по первому символу
• формулы - переносится вычисленный результат, не сама формула
• максимум 999 строк и 999 столбцов (может тормозить на больших таблицах!)
• есть небольшие косяки с шириной столбцов и высотой строк, т.к. Excel их измеряет в относительных "пунктах"...
• есть небольшие косяки с размером текста, т.к. все шрифты по разному отображаются в Excel и AutoCAD, поэтому я ввел коэффициент пересчета (менять подбором в константах кода)
✂️✂️✂️✂️✂️
Благодарности:
🍺 Спасибо zvyagaaa за отличную базовую панель и идею!
🍺 И спасибо подписчику за вопрос, который запустил эту доработку!
Ссылки:
📎 Оригинальная панель zvyagaaa
📎Доработанная версия с полным форматированием
Если используете — напишите в комментариях, как работает и чего не хватает. Будем улучшать!====================
📖 Оглавление канала
🙃 Авторские разработки
📰 Чат для общения
💰 Поддержать автора