好的,这是我的第二个版本。
- Public Sub IncAtt()
- Dim myEntity As AcadObject
- Dim basePnt(0 To 2) As Double
- Dim myAttrib As Variant
- Dim i As Integer
- Dim myString As String
- Dim ExitFlag As Boolean
- Dim PickedPoint As Variant, TransMatrix As Variant, ContextData As Variant
- ExitFlag = False
- On Error Resume Next
- myString = ThisDrawing.Utility.GetString(0, "Start Number ")
- i = Val(myString)
- If myString = "" Then i = 1
- Do
- ThisDrawing.Utility.GetSubEntity myEntity, basePnt, TransMatrix, ContextData, "Select an object"
- If Err <> 0 Then
- ExitFlag = True
- Else
- If myEntity.EntityName = "AcDbAttribute" Or myEntity.EntityName = "AcDbText" Then
- myEntity.TextString = Str$(i)
- i = i + 1
- Else
- MsgBox "You must select an Attribute or Text"
- End If
- End If
- Loop Until ExitFlag
- End Sub
这一次,您可以选择文本或属性。这并不完全正确,因为即使你选择了一行,数字也会不断增加,但没关系,这是一个开始。 |