Доброго времени суток всем!Недавно посетила мысль "по?...

Автор ForumOOo (бот), 6 марта 2017, 15:56

0 Пользователи и 1 гость просматривают эту тему.

ForumOOo (бот)

Компонент: Basic
Версия продукта: 5.x
Сборка: LibreOffice
ОС: Windows7

Доброго времени суток всем!Недавно посетила мысль "подружить" Open Office calc 5.2 с AutoСad 2011.
Замысел прост допустим есть расчётный шаблон, из которого мне нужно передать данные для прорисовки в AutoСad 2011.
Сам додумался только до вот этого:

Sub Main
Dim acad as object
Dim doc as object
Dim p1()as double rem массив с плавающей точкой
Dim p2() as variant rem массив типа вариант

p1()=Array(500.0,500.0,0.0) rem сохраняем в объявленный массив типа дубль координаты с точкой
p2()=Array(1000.0,400.0,0.0)
acad = CreateObject("AutoCAD.Application.18") rem создаём объект фвтокада, чтобы потом обратиться к нему
Wait(3000)rem приостанавливаем работу программы до полной прогрузки автокада

acad.Visible=True rem устанавливаем видимость объекту автокада
acad.WindowState=3
acad.ActiveDocument.Layers.Add("tyu")rem эта строка кода создаёт в объекте автокада слой с именем tyu
acad.ActiveDocument.ActiveSpace=1 rem активация пространства листа

rem слой создаётся с модели в лист и нааборот переходит какого х....на не создаёшь мне точку?!!!

Wait(1000)rem задержка выполнения программы
acad.ActiveDocument.SendCommand "_.Circle 2,2,0 4 "rem ура прочертил круг!!!из под командной строки

acad.ActiveDocument.ModelSpace.AddPoint(p1) rem этой строкой переходим в пространство модели, создаём точку
 rem именно на этой строке выдаёт ошибку.
End Sub

Заранее хочу всех поблагодарить кто хоть как откликнется. Сам решить так и не смог, работает не стабильно, но работает.
Ошибка выходит только тогда, когда нужно передать безопасный массив(не распознаёт сам автокад, тот массив который передаётся LibreOffice Calc
)


--
Подпись: ximic