[求助]CAD中坐标值批量转移到EXCEL中
<p>我想把CAD中光标所点的坐标值批量转移到EXCEL表格中。</p><p>例如:我打开一张CAD图形,上面有好多圆,我每点击一下(仅扑捉点击圆心),就会在EXCEL表格中按顺序把我点击的坐标数值显示出来</p><p>点号 X Y</p><p>1 3000 2000</p><p>2 1000 2000</p><p>3 4000 3000</p><p>……</p><p>请高手帮我解决这个问题,谢谢!(能不能用一个lisp程序,把cad指定点坐标导出到EXCEL)?</p><p></p>可以
可以帮到你的忙的,我的联系方式是QQ375564896 <p>你可以先创建一个记事本。先把坐标导入记事本在导入excel</p><p>Dim us3 As Integer '左下角Y坐标<br/>us1 = ThisDrawing.GetVariable("userr1")<br/>us2 = ThisDrawing.GetVariable("userr2")<br/>us3 = ThisDrawing.GetVariable("userr3")<br/>'Dim pnt_cord(0 To 1) As Double<br/>Dim sset As AcadSelectionSet <br/>Dim i As Integer</p><p>For i = 0 To ThisDrawing.SelectionSets.Count - 1<br/>ThisDrawing.SelectionSets.Item(i).Clear<br/>ThisDrawing.SelectionSets.Item(i).Delete<br/>Next<br/>ft(0) = 0<br/>fd(0) = "Point" <br/>Set sset = ThisDrawing.SelectionSets.Add("Sset_P") <br/>sset.Select acSelectionSetAll, , , ft, fd <br/>ReDim pnt_cord(sset.Count - 1) As Variant <br/>ReDim x(sset.Count - 1)<br/>ReDim y(sset.Count - 1)<br/>dnr = ""</p><p>For i = 0 To sset.Count - 1 <br/>pnt_cord(i) = sset.Item(i).Coordinates </p><p>Select Case us1<br/>Case 500<br/>If us2 = 0 And us3 = 0 Then<br/>x(i) = (pnt_cord(i)(1) - 100) / 2<br/>y(i) = (pnt_cord(i)(0) - 100) / 2<br/>ElseIf us2 = 100 And us3 = 100 Then<br/>x(i) = (pnt_cord(i)(1) + 100) / 2<br/>y(i) = (pnt_cord(i)(0) + 100) / 2<br/>End If<br/>Case 1000<br/>If us2 = 0 And us3 = 0 Then<br/>x(i) = pnt_cord(i)(1) - 100<br/>y(i) = pnt_cord(i)(0) - 100<br/>ElseIf us2 = 100 And us3 = 100 Then<br/>x(i) = pnt_cord(i)(1)<br/>y(i) = pnt_cord(i)(0)<br/>End If</p><p>End Select</p><p><br/>'*******按scs2000展点文件格式排列点<br/>dnr = dnr & vbCrLf & (i + 1) & vbCrLf & "" & vbCrLf & y(i) & vbCrLf & x(i) & vbCrLf & pnt_cord(i)(2)</p><p>Next<br/>outtxt = sset.Count & dnr<br/>MsgBox "点导出成功,请保存文件!"<br/>End Sub</p><p></p><p></p> <p>谢谢共享!</p> 是个好东西,不知是否可行啊。 查看<a href="http://ljttjl.ys168.com">http://ljttjl.ys168.com</a> <a class="actuator" id="F480358_20081016按点击点的顺序进行编号且提取其坐标程序" href="javascript:">20081016目录 按点击点的顺序进行编号且提取其坐标程序</a><br/>
页:
[1]