Edit Line Text.
Here's a good one for you. This will allow you to select any line of
text, and then edit it using a dialogue box.
Note : This will only work with Line Text. Sorry :-(
First of all you need a Module with this coding in it :
Option Explicit
Public objPicked As AcadObject
Public Const VK_ESCAPE = &H1B
Declare Function GetAsyncKeyState Lib "user32" _
(ByVal vKey As Long) As Integer
Function checkkey(lngKey As Long) As Boolean If GetAsyncKeyState(lngKey)
Then checkkey = True Else checkkey = False End If End Function
Public Sub textedit() Dim BasePnt As AcadPoint 'declare variables Start:
On Error GoTo errControl 'if there is an error
ThisDrawing.Utility.GetEntity objPicked, BasePnt, _ "Select Line
Text" 'select the object UserForm1.TextBox1.Text =
objPicked.TextString 'get the existing textstring and put it in 'the text
box UserForm1.Show 'display the dialogue Exit Sub 'exit the sub routine
errControl: 'define the error control If Err.Description = "Method 'GetEntity'
of object _ 'IAcadUtility' failed" Then 'if the error matches these..
If checkkey(VK_ESCAPE) = True Then 'if the escape key is selected End 'end
Else 'or else Resume 'repeat "Select Object" End If Else MsgBox
Err.Description 'it must be another type of error End If End Sub
Now insert a userform with a text box and two buttons. Keep the default
names and add this coding to the form :
Private Sub CommandButton1_Click()
If TextBox1.Text = "" Then
'if all text is deleted
TextBox1.Text = " "
'put in a space
End If
objPicked.TextString = TextBox1.Text
'get the text string from the text box
objPicked.Update
'update the text
End
End Sub
Private Sub CommandButton2_Click() End End Sub
Private Sub UserForm_Activate() UserForm1.TextBox1.SetFocus 'set focus to
the textbox UserForm1.TextBox1.SelStart = 0 'start at the first character
UserForm1.TextBox1.SelLength = Len(UserForm1.TextBox1.Text) 'highlight the
text string End Sub
Now run the macro "TextEdit" and select some line text when
prompted.
Change the text and select O.K. Crikey, I'm good hey!!!!
If you would like to download the source code for this Application/s, then
click Here |