Импорт параметров объекта из AutoCAD в Word
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Импорт параметров объекта из AutoCAD в Word

Импорт параметров объекта из AutoCAD в Word

Ответ
Поиск в этой теме
Непрочитано 08.06.2009, 23:18 #1
Импорт параметров объекта из AutoCAD в Word
GePard
 
Межевание
 
г. Чебоксары
Регистрация: 08.06.2009
Сообщений: 8

Передо мной стоит такая задача (убедить начальство нанять программиста не представляется возможным). Нужно параметры полилинии (координаты, расстояния, площадь, периметр и т.д.) перенести в Word, причём оформить нужно это в виде таблицы (ширина, кол-во строк и столбцов, граница и заливка, шрифт тектста и т.д.). Что можете посоветовать для самостоятельного изучения?
Просмотров: 8096
 
Непрочитано 08.06.2009, 23:27
#2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


А обязательно в Word? Использовать обычные AutoCAD'овские таблицы нельзя?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 09.06.2009, 19:02
#3
GePard

Межевание
 
Регистрация: 08.06.2009
г. Чебоксары
Сообщений: 8
<phrase 1=


Да, нужно именно в Word, т.к. после импорта предстоят некоторые редактирования
GePard вне форума  
 
Непрочитано 09.06.2009, 19:40
#4
-mavlin-


 
Регистрация: 30.04.2008
Сообщений: 401


Редактировать можно нетолько в ворде, но и в автокаде.
Или так не катит?
-mavlin- вне форума  
 
Непрочитано 09.06.2009, 20:22
#5
Клякса

Инженер
 
Регистрация: 15.08.2007
Питер
Сообщений: 36
<phrase 1=


Изучай VBA, не промахнешься. VBA поддерживается и Акадом и Вордом (в Оффисе это встроенный язык программирования). VBA прост, как шлагбаум. И по форумам много советов найти можно (в т.ч. и в этом форуме)
__________________
Ошибку нашел и исправил, но в чем она заключалась, так и не понял...
Клякса вне форума  
 
Непрочитано 09.06.2009, 20:59
#6
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


Только VBA начиная с версии AutoCAD 2010 уже официально Autodesk'ом не поддерживается. Судьба VBA как языка весьма невнятна ИМХО.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 09.06.2009, 21:04
#7
GePard

Межевание
 
Регистрация: 08.06.2009
г. Чебоксары
Сообщений: 8
<phrase 1=


Цитата:
Редактировать можно нетолько в ворде, но и в автокаде.
Или так не катит?
мне кажется, что легче это сделать в Ворде, просто иногда приходится передавать эти документы в другие организации, где нет Автокада, опять же терять время на пдф. Хотя я могу и что-то путать, т.к. с таблицами в Автокаде не работал (не приходилось) и имеется свойства экспорта их в текстовые редакторы. Тогда над этим можно подумать.

Цитата:
Изучай VBA, не промахнешься. VBA поддерживается и Акадом и Вордом (в Оффисе это встроенный язык программирования). VBA прост, как шлагбаум. И по форумам много советов найти можно (в т.ч. и в этом форуме)
Начал изучать VBA в Ворде. А с Автокадом не понимаю. Нужно будет использовать Вишл Бэйсик? Он поддерживает спецкоманды для работы с Автокадом? Стоит ли изучать сам Бэйсик или можно, к примеру, Делфи? Если вам известно, то дайте, пожалуйста, ссылки на полезную литературу, в т.ч. и для Автокада. А то облазишь инет, найдёшь несколько вариантов, а они бесполезны.
GePard вне форума  
 
Непрочитано 10.06.2009, 12:02
#8
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


GePard, Ты не указал версию Автокада. Если 2008 и выше, то разберись с таблицами, _dataextraction. Программировать не нужно. Из Excel в Word скопировать таблицу не составит труда.
Пару тем в помощь
ВИДЕО FAQ по AutoCAD особенно вопросы №№2;9
Где можно применить "Извлечение данных"(_.dataextraction)?
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 10.06.2009, 19:04
#9
GePard

Межевание
 
Регистрация: 08.06.2009
г. Чебоксары
Сообщений: 8
<phrase 1=


Вчера как раз начал изучать таблицы в 2008. Чего-нибудь придумать можно. Спасибо за ссылки, думаю они будут полезны. Проблема в том, что лицензия на работе только на 2002 и 2007, а мне нужно как раз для этих версий что-то придумать.
GePard вне форума  
 
Непрочитано 10.06.2009, 22:24
#10
Клякса

Инженер
 
Регистрация: 15.08.2007
Питер
Сообщений: 36
<phrase 1=


Цитата:
Начал изучать VBA в Ворде. А с Автокадом не понимаю. Нужно будет использовать Вишл Бэйсик?
Акад поддерживает VBA (с учетом замечания Кулика Алексея aka kpblc). Но в отличие от оффисных приложений, в Акаде нельзя _записать_ макрос автоматически, все ручками придется делать. Самое приятное то, что код VBA можно скопипастить в компилятор VB. Я так и делаю: сперва пишу макросы под Вордом или Акадом, тестирую на результат, а потом копирую код в Басик и генерирую обычный экзешник, который выполняет то, что надо, и с Вордом и с Акадом. Это сильно упрощает разговор с _тетушками_, у которых от слов "macros", "load application", "запуск процедуры" начинаются мозговые колики. Проще один раз запариться с экзешником, чем объяснять, как запускать приложение в акаде, где и в каких строчках менять нужные параметры и т.д.
Синтаксис VBA и VB почти идентичет (как с Делфи - не знаю), поэтому при переходе от макроса к полноценному приложению проблем особых не должно быть. Надо только подключить библиотеки Акада и Ворда.
__________________
Ошибку нашел и исправил, но в чем она заключалась, так и не понял...
Клякса вне форума  
 
Непрочитано 10.06.2009, 23:46
#11
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


Добавлю: может, лучше использовать позднее связывание для варианта стороннего приложения? По крайней мере, в 90% случаев к конкретной версии привязан не будешь...
Конечно, это усложняет написание кода, да и быстродействие падает. Но отсутствие необходимости перекомпилировать приложение на новые версии, мне кажется, окупит подобные трудности.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 14.06.2009, 20:00
#12
Клякса

Инженер
 
Регистрация: 15.08.2007
Питер
Сообщений: 36
<phrase 1=


Полностью согласен с предыдущим оратором. Только поначалу прощее все-таки подключать библиотеки вручную :-)
__________________
Ошибку нашел и исправил, но в чем она заключалась, так и не понял...
Клякса вне форума  
 
Автор темы   Непрочитано 14.06.2009, 21:51
#13
GePard

Межевание
 
Регистрация: 08.06.2009
г. Чебоксары
Сообщений: 8
<phrase 1=


Спасибо за помощь. У меня возник вопрос, где можно найти хороший VBA самоучитель для AutoCAD на русском языке или легче выучить английский язык?
GePard вне форума  
 
Непрочитано 14.06.2009, 23:18
#14
Eximius

аспирант
 
Регистрация: 17.12.2008
Волгоградская область
Сообщений: 49
Отправить сообщение для Eximius с помощью Skype™


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Только VBA начиная с версии AutoCAD 2010 уже официально Autodesk'ом не поддерживается. Судьба VBA как языка весьма невнятна ИМХО.
Offtop: А подробней про перспективы vba в autocad и вообще про его (VBA) перспективы можно?
Eximius вне форума  
 
Непрочитано 15.06.2009, 00:30
#15
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406


К сожалению, я не помню точной ссылки. Но суть такова, что Microsoft практически официально прекратила поддержку VBA для MS Office начиная с версии 2007 и переводит всех пользователей на использование .NET-платформы. Autodesk идет "нога в ногу"...
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 17.06.2009, 20:10
#16
Клякса

Инженер
 
Регистрация: 15.08.2007
Питер
Сообщений: 36
<phrase 1=


Не знаю, как в г. Чебоксары, а в Питере литературы по VB и VBA полно на русском. К слову: VB позволяет и часть кода (названия переменных, процедур и пр. ) писать по-русски.
__________________
Ошибку нашел и исправил, но в чем она заключалась, так и не понял...
Клякса вне форума  
 
Автор темы   Непрочитано 18.06.2009, 20:25
#17
GePard

Межевание
 
Регистрация: 08.06.2009
г. Чебоксары
Сообщений: 8
<phrase 1=


Цитата:
Не знаю, как в г. Чебоксары, а в Питере литературы по VB и VBA полно на русском. К слову: VB позволяет и часть кода (названия переменных, процедур и пр. ) писать по-русски.
Я просил совета по конкретной книге, которая поможет мне решить конкретный вопрос в доступной форме. Если знаешь такую, посоветуй, пожалуйста.

В одной из английских книг нашёл вот что:

Код:
[Выделить все]
Sub word()
Set mobjword = CreateObject("word.application")
mobjword.Visible = True
Set mobjword = mobjword.Documents.Add
Set mobjtable = mobjword.ActiveDocument.tables.Add(mobjword.ActiveDocument.range, Application.Documents(cbodrawingname.text).Layers.Count + 1, 9)
End Sub
Открывает Ворд, создаёт новый документ, создаёт в нём таблицу 1 на 9. Ворд открывает, документ создаёт, а вот таблицу не вставляет - выскакивает окно. Мудился, мудился - ни до чего не домудился. Хотя если бы это сработало, то не нужно было бы связываться с ВБА Вородом, было бы легче. Помогите, пожалуйста, разобраться.

Ворд - 2003, АвтоКАД - 2008
Миниатюры
Нажмите на изображение для увеличения
Название: dwg.jpg
Просмотров: 80
Размер:	24.4 Кб
ID:	22472  
GePard вне форума  
 
Непрочитано 18.06.2009, 22:04
#18
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Вот 2 строчки:
Цитата:
Set mobjword = CreateObject("word.application")
Set mobjword = mobjword.Documents.Add
Ты в одну и ту же переменную пытаешься присвоить и объект Word и объект Документ, а потом у Документа пытаешься взять ActiveDocument
Код:
[Выделить все]
Sub word()
Set OW = CreateObject("word.application")
OW.Visible = True
Set WDOC = OW.Documents.Add
Set WTBL = WDOC.tables.Add(WDOC.range, 1, 9)
End Sub
__________________
Как использовать код на Лиспе читаем здесь

Последний раз редактировалось VVA, 21.06.2009 в 19:36.
VVA вне форума  
 
Автор темы   Непрочитано 21.06.2009, 16:52
#19
GePard

Межевание
 
Регистрация: 08.06.2009
г. Чебоксары
Сообщений: 8
<phrase 1=


спасибо большое за ответ, помогло

у меня возник такой вопрос:

Код:
[Выделить все]
wt.cell(4, 1).borders.linestyle = wdLineStyleSingle
что здесь неправильно? вт - таблица.

и ещё, как можно менять ширину-высоту одной конкретной ячейки, пробовал - не получается. Или легче просто разбить таблицу, условно говоря, на 50х40, а потом объединять нужные, насколько это целесообразно?
GePard вне форума  
 
Непрочитано 21.06.2009, 19:38
#20
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


GePard, Включаешь автозапись макроса в Word'e, делаешь то что нужно, изучаешь код.
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Импорт параметров объекта из AutoCAD в Word



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Текст из autocad в Word в текущее положение курсора. Как? _Andre_ Программирование 31 18.06.2016 15:56
Как вставить чертеж из AutoCAD в Word? lyubitel4 AutoCAD 37 06.10.2014 19:28
Вставка AutoCAD чертежа в Word Youdgin AutoCAD 36 02.09.2011 17:14
Импорт настроек AutoCad 2009 sashkalee AutoCAD 6 05.10.2009 15:09
Возможность проецирования объекта на выбранную плоскость в AutoCAD 2006 Геннадий+ AutoCAD 2 17.12.2008 18:02