(изменено: shprot, 16 июля 2013г. 20:39:07)

Тема: Переход из Excel в AutoCAD и обратно при позднем связывании

Макрос написан и запускается из Excel, считаем что AutoCAD уже открыт.
Нужно что-бы произошел переход из Excel в AucoCAD, в нем берутся координаты, затем возврат к окну Excel.
При использовании раннего связывания все работает:

Private Sub test()
Dim point1 As Variant, point2 As Variant
Dim objApp As AcadApplication, objDoc As AcadDocument

Set objApp = GetObject(, "AutoCAD.Application")
Set objDoc = objApp.ActiveDocument
AppActivate objApp.Caption 'передаем фокус окну AutoCAD
  
'выбор точек AutoCAD
point1 = objDoc.Utility.GetPoint(, vbCrLf & ": ")
point2 = objDoc.Utility.GetPoint(point1, vbCrLf & ": ")

objApp.WindowState = acMin 'минимизация окна AutoCAD
AppActivate Application.Caption 'передаем фокус окну Excel
Application.Windows.Item(1).Activate
End Sub

Но нужно использовать позднее связывание т.е. с отключенной библиотекой AutoCAD? так как макрос может быть использован с отсутствующей библиотекой AutoCAD, в таком варианте не работает:

Private Sub test()
Dim point1 As Variant, point2 As Variant
Dim objApp As Object, objDoc As Object

Set objApp = GetObject(, "AutoCAD.Application")
Set objDoc = objApp.ActiveDocument
AppActivate objApp.Caption 'передаем фокус окну AutoCAD
  
'выбор точек AutoCAD
point1 = objDoc.Utility.GetPoint(, vbCrLf & ": ")
point2 = objDoc.Utility.GetPoint(point1, vbCrLf & ": ")

objApp.WindowState = acMin 'минимизация окна AutoCAD
AppActivate Application.Caption 'передаем фокус окну Excel
Application.Windows.Item(1).Activate
End Sub

ошибка в

objApp.WindowState = acMin

пишет что недопустимый аргумент, получается что objApp.WindowState = Empty

Что не так делаю? Заранее спасибо за помощь.

Re: Переход из Excel в AutoCAD и обратно при позднем связывании

Открой редактор VBA в Автокаде,
введи в окне Immediate Window:

?acMin

и нажми Enter полученное число вставишь
вместо acMin, то же самое использую для Экселя,
если надо получить для позднего связывания с ним

Re: Переход из Excel в AutoCAD и обратно при позднем связывании

Большое спасибо, очень помогли!

Re: Переход из Excel в AutoCAD и обратно при позднем связывании

Не за что :)
Успехов