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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > VBA переходи из AutoCAD в Excel. Не работает AppActivate

VBA переходи из AutoCAD в Excel. Не работает AppActivate

Ответ
Поиск в этой теме
Непрочитано 04.05.2012, 11:12 #1
VBA переходи из AutoCAD в Excel. Не работает AppActivate
shprot
 
Регистрация: 08.02.2011
Сообщений: 33

Помогите пожалуйста в таком вопросе. Есть макрос написанный в Excel, он делает следующее, делается переход в AutoCAD где делается выбор объектов которые обрабатываются, после этого нужно вернутся в окно Excel, а вот с этим проблема, оно фокус вроде получает, (просто мигает окно) но не разворачивается. Заранее благодарен.

Код:
[Выделить все]
Private Sub Обработка() 
Dim objApp As AcadApplication, objDoc As AcadDocument, sset As AcadSelectionSet

Set objApp = GetObject(, "AutoCAD.Application")
Set objDoc = objApp.ActiveDocument
AppActivate objApp.Caption

Set sset = objDoc.SelectionSets.Add("ss2")
sset.SelectOnScreen 

'здесь делаем обработку

AppActivate Application.Caption 'передаем фокус Excel, но он почему то не срабатывает
End Sub
AutoCAD 2011 Excel 2010
Просмотров: 5753
 
Непрочитано 04.05.2012, 15:50
#2
Brispol


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


вот так вроде работает

Sub Макрос1()

Set objApp = GetObject(, "AutoCAD.Application")
Set objDoc = objApp.ActiveDocument
AppActivate objApp.Caption

'здесь делаем обработку

Set objApp = GetObject(, "Excel.Application")
AppActivate objApp.Caption

End Sub
Brispol вне форума  
 
Автор темы   Непрочитано 04.05.2012, 16:53
#3
shprot


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


Работает но так же как и раньше, увы.
shprot вне форума  
 
Непрочитано 04.05.2012, 17:19
#4
Олег (jr.)

специалист по околачиванию грушевых деревьев
 
Регистрация: 14.09.2004
Pietari, Venäjä
Сообщений: 813


Что-то вроде этого:
Option Explicit
Код:
[Выделить все]
Sub Test()

Dim Cap As String
Cap = Application.Caption
Dim objApp As AcadApplication, objDoc As AcadDocument, oSset As AcadSelectionSet
Set objApp = GetObject(, "AutoCAD.Application")
Set objDoc = objApp.ActiveDocument
AppActivate objApp.Caption
Dim ftype() As Integer
Dim fdata() As Variant
Dim dxfCode, dxfValue

          With objDoc.SelectionSets
               While .Count > 0
                    .Item(0).Delete
               Wend
          Set oSset = .Add("$NewOne$")
          End With
          
oSset.SelectOnScreen

objApp.WindowState = acMin

DoEvents

AppActivate Cap

Application.Windows.Item(1).Activate

MsgBox oSset.Count

End Sub
~'o'~
Олег (jr.) вне форума  
 
Автор темы   Непрочитано 04.05.2012, 21:54
#5
shprot


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


Спасибо все работает, очень помогли!
Только добавил строку
Код:
[Выделить все]
objApp.WindowState = acMax
Код:
[Выделить все]
On Error GoTo u 'ошибка при закрытом AutoCAD
Set objApp = GetObject(, "AutoCAD.Application")
Set objDoc = objApp.ActiveDocument
objApp.WindowState = acMax
AppActivate objApp.Caption 'передаем фокус окну AutoCAD
А то повторный переход в AutoCAD не срабатывал
shprot вне форума  
 
Непрочитано 04.05.2012, 22:24
#6
Олег (jr.)

специалист по околачиванию грушевых деревьев
 
Регистрация: 14.09.2004
Pietari, Venäjä
Сообщений: 813


Ну и ладушки
Олег (jr.) вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > VBA переходи из AutoCAD в Excel. Не работает AppActivate

Размещение рекламы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
книги по VBA AutoCAD DY Программирование 30 15.02.2013 16:16
Таблица из Excel в AutoCAD Elbrus AutoCAD 56 11.06.2012 11:41
Выгрузить данные зи таблицы Autocad в Excel gizmo_zx AutoCAD 4 14.07.2011 11:40
Как перегнать таблицу из Autocad в файл Excel gizmo_zx Программирование 3 29.12.2009 15:32
Перебор ячеек в Excel из VBA AutoCAD SVitaliy Программирование 6 10.10.2007 23:45