Как при помощи VBA открыть OLE объект (Excel) в AutoCad 2013
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как при помощи VBA открыть OLE объект (Excel) в AutoCad 2013

Как при помощи VBA открыть OLE объект (Excel) в AutoCad 2013

Ответ
Поиск в этой теме
Непрочитано 11.03.2014, 17:44 #1
Как при помощи VBA открыть OLE объект (Excel) в AutoCad 2013
Stormy_Day
 
Регистрация: 21.01.2012
Сообщений: 8

Доброго времени суток.
В файле AutoCad AutoCad-а вставлена таблица как OLE объект (Excel) . Открываешь файл → редактируешь → закрываешь и все на месте. Как это можно сделать программно при помощи VBA? Допустим кликнул 2 раза на лист и OLE объект (Excel) открылся для редактирования.
Код:
[Выделить все]
Private Sub AcadDocument_BeginDoubleClick(ByVal PickPoint As Variant)
MsgBox "жжжжжж"
End Sub
Варианты *ручками* и *мышкой* не катят. Так как OLE объектов несколько, планируется сделать фоновое открытие после которого макрос в самом Excel загружает туда данные.
Просмотров: 5834
 
Непрочитано 12.03.2014, 13:15
#2
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,701
Отправить сообщение для Do$ с помощью Skype™


Так в чем проблема-то?
Найти OLE-объекты в документе.
Вытащить из OLE-объектов пути к файлам.
Открыть файлы.
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic)
Do$ вне форума  
 
Автор темы   Непрочитано 12.03.2014, 13:21
#3
Stormy_Day


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


Цитата:
Сообщение от Do$ Посмотреть сообщение
Так в чем проблема-то?
Найти OLE-объекты в документе.
Вытащить из OLE-объектов пути к файлам.
Открыть файлы.
Не хватает опыта и знаний для того, чтобы проделать это. К примеру в Excele все можно сделать макрорекордером и понять как и что, а в Автокаде этого на ВБА не сделаешь.

----- добавлено через ~8 ч. -----
То ли это так сложно, что и информацию найти на просторах рунета не удалось. То ли наоборот настолько просто, что никто об этом и не пишет (
Stormy_Day вне форума  
 
Непрочитано 13.03.2014, 10:37
#4
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,701
Отправить сообщение для Do$ с помощью Skype™


Информации - море. Но не всегда на русском языке.
OLE объект - такой же объект, как и остальные в AutoCAD. Единственная особенность - он определяется, вроде бы, как Raster (http://vbamodel.narod.ru/AutoCAD/idh_raster_object.htm). Найти его можно с помощью методов выбора объектов в чертеже, на VBA вроде других вариантов нет (http://forums.autodesk.com/t5/Visual...713074#M307753). В метод выбора (http://vbamodel.narod.ru/AutoCAD/idh_select.htm) передается фильтр, определяющий где и что ищем. Найденные объекты попадают в набор (http://vbamodel.narod.ru/AutoCAD/idh...set_object.htm). Если в фильтре все задано правильно, то в наборе будут только OLE объекты. Проходим по объектам этого набора, читаем свойство - имя файла, откуда взят объект. На VBA не пишу, поэтому никакими кодами не могу поделиться.
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic)
Do$ вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как при помощи VBA открыть OLE объект (Excel) в AutoCad 2013



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как отключить в autocad 2013 перемешение при помощи клавиш Ctrl+Up, Ctrl+Down, Ctrl+Left, Ctrl+Right, dima0324 AutoCAD 5 20.06.2017 17:08
Ассоциативность размеров в autocad MEP 2013 asiii Вертикальные решения на базе AutoCAD 15 03.03.2014 12:50
AutoCAD MEP 2013 Rus Как облегчить файл для чтения в Autocad 2007 Rus? Sh_C Вертикальные решения на базе AutoCAD 3 05.08.2013 10:52
програмки в Excel для отрисовки полилиний в AutoCAD Тох@ Программирование 5 22.11.2012 16:38