2017-07-27 67 views
0

我想使用excelvba在autocad中繪製一條線。 我嘗試了下面的代碼,但它給出了一些運行時錯誤顯示「對象不支持此屬性或方法」在第二行。 請幫我解決這個問題。如何使用excel vba在autocad中繪製一條線?

Dim point1(1 To 3) As Double 
Dim point2(1 To 3) As Double 
Dim lineobj As Object 
Dim myapp As Object 
Dim AcadDwg As AcadDocument 

Sub access_autocad() 
On Error GoTo ERRORHANDLER 
Set myapp = GetObject(, "autocad.application") 

ERRORHANDLER: 
    If Err.Description <> "" Then 
    Set myapp = CreateObject("autocad.application") 
    End If 
    myapp.Visible = True 
Set AcadDwg = myapp.ActiveDocument 
point1(1) = 0: point1(2) = 0 
point2(1) = 1: point2(2) = 1 
Set lineobj = AcadDwg.AddLine(point1, point2) 

End Sub 
+0

如果這個或任何答案已經解決你的問題,請考慮[接受它(https://meta.stackexchange.com/ q/5234/179419),點擊複選標記並點擊向上箭頭進行upvoting。這向更廣泛的社區表明您已找到解決方案。沒有義務這樣做。 –

回答

0

你只需要做出一個改變。在倒數第二行,更改:

Set lineobj = AcadDwg.AddLine(point1, point2) 

要:

Set lineobj = AcadDwg.ModelSpace.AddLine(point1, point2) 
+0

它的工作原理。但我有另一個問題。當我首先打開autocad並運行此代碼時,它工作正常。但是,當我運行它而不打開autocad時它不能自動打開autocad。它需要很長時間,最後不能打開。如果你能在這裏幫助我,我將非常感激。 –

+0

好消息是您的代碼在我的機器上按預期工作。壞消息是我不知道爲什麼它不能在你的機器上工作。不過,我偶爾也看到了這一點。 –