excelVBA 让Excel里面的坐标自动在AutoCAD绘制多段线。

想做一个在能在Excel里面填入数据、文字,然后点击一下按钮,在CAD里面自动成图。
主要目的是在Excel里面填入坐标,自动在CAD中画一条多段线。
第一,安装了三个CAD版本(每个软件各自又套了二次开发的软件)。
第二,能不能给个代码看看。主要是Excel怎么和cad连接起来呢?
第三,人穷,分不高。跪谢。
我已经连续提高三次悬赏了。。。

第1个回答  推荐于2016-07-18
Sub kkk()
Dim acadApp As AcadApplication
Dim acaddocs As AcadDocuments
Dim acaddoc As AcadDocument
On Error Resume Next
Set acadApp = CreateObject("AutoCAD.Application")
Set acaddoc = acadApp.ActiveDocument
acadApp.Visible = True
Dim myline As AcadLWPolyline
Dim mylist(5) As Double
mylist(0) = Cells(1, 1)
mylist(1) = Cells(1, 2)
mylist(2) = Cells(2, 1)
mylist(3) = Cells(2, 2)
mylist(4) = Cells(3, 1)
mylist(5) = Cells(3, 2)
Set myline = acaddoc.ModelSpace.AddLightWeightPolyline(mylist)
End Sub追问

你能加一下注释吗?

追答

'注意引用autocad objectdbx common 17.0type和autocad2007 type library
Dim acadApp As AcadApplication '定义一个CAD进程
Dim acaddoc As AcadDocument '定义一个CAD文件
On Error Resume Next '如果出错,执行下一行
Set acadApp = CreateObject("AutoCAD.Application") '调用CAD程序
Set acaddoc = acadApp.ActiveDocument '取得当前文件
acadApp.Visible = True '设置可见性
acadApp.WindowState = acMax '最大化显示
Dim myline As AcadLWPolyline '定义多线段
Dim mylist(5) As Double '定义多线段上点的数组,每点二个
mylist(0) = Cells(1, 1) '第1个点的X轴坐标取第1个单元格的值
mylist(1) = Cells(1, 2) '第1个点的y轴坐标取第2个单元格的值
mylist(2) = Cells(2, 1) '第2个点的X轴坐标取第3个单元格的值
mylist(3) = Cells(2, 2) '第2个点的y轴坐标取第4个单元格的值
mylist(4) = Cells(3, 1) '第3个点的X轴坐标取第5个单元格的值
mylist(5) = Cells(3, 2) '第3个点的y轴坐标取第6个单元格的值
Set myline = acaddoc.ModelSpace.AddLightWeightPolyline(mylist) '在模型空间画出多线段

本回答被提问者和网友采纳
相似回答