急求:初学vba 请大家帮助
如果我想通过对话框修改点的坐标,然后在中图形就相应的做出了改变。请各位高手帮帮小弟。可否给出点程序。我对vba的函数不清楚。 说说你的具体要求 我大概明白 tfod2000 老兄的意思了!好像我没发现在VBA里没有点的坐标属性所以在已创建的点上好像不能获取的!还好点的属性并不多!我想了个傻办法就是把原来的物体选取后创建一个新的点,再把原来点的属性赋予它!再把原来的点删除!呵呵!实在惭愧小弟我只能像出这个傻办法来解决这个问题!不知道哪位大虾有更好的办法请告诉小弟!下面是小弟的代码有不对的地方请各位指正:
Sub test()
On Error Resume Next
Dim sset As AcadSelectionSet
Set sset = ThisDrawing.SelectionSets.Add("test")
sset.SelectOnScreen
Dim entry As AcadEntity
For Each entry In sset
Name1 = entry.ObjectName
If Name1 = "AcDbPoint" Then
Dim pointObj As AcadPoint
Dim point1(0 To 2) As Double
' 定义点的位置
point1(0) = 0#: point1(1) = 0#: point1(2) = 0# '可以改为你需要的点
' 创建点
Set pointObj = ThisDrawing.ModelSpace.AddPoint(point1)
pointObj.Color = entry.Color
pointObj.Layer = entry.Layer
pointObj.Linetype = entry.Linetype '可以不需要
pointObj.LinetypeScale = entry.LinetypeScale '可以不需要
pointObj.Lineweight = entry.Lineweight '可以不需要
pointObj.Thickness = entry.Thickness '可以不需要
entry.Delete
Else
MsgBox "没有点被选去,请检查", vbOKOnly
End If
Next entry
sset.Delete
End Sub
在point1的3个点的定义中可以加入你对话框里点的3个坐标数据!
不好意思写的太急了那段msgbox应该是 MsgBox "被选去的图元中有非点的物体但它没有被改变,请检查", vbOKOnly
页:
[1]