ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   clear format from RichTextBox (https://www.excelbanter.com/excel-programming/344852-clear-format-richtextbox.html)

RB Smissaert

clear format from RichTextBox
 
How do I clear the format (font colour only) from a RichTextBox?


When I clear the text (TextRTF) and then put new text in in a different Sub
it works fine, but when I try to do the same in one Sub it doesn't work and
just keep the old format:

Private Sub CommandButton1_Click()
RichTextBox1.TextRTF = "SELECT E.TERM_TEXT FROM ENTRY E WHERE
E.READ_CODE = 'G58..'"
End Sub

Private Sub CommandButton2_Click()
RichTextBox1.TextRTF = vbNullString
End Sub

Private Sub CommandButton3_Click()

Dim strTemp As String

With RichTextBox1
strTemp = .Text
.SetFocus
.SelStart = 0
.SelLength = Len(.Text)
.SelColor = 0
.Text = vbNullString
.TextRTF = vbNullString
.TextRTF = strTemp
.Refresh
End With

End Sub


Number 3 doesn't work (although strTemp is a normal string with no
formatting) but number 1 after number 2
works fine.


RBS


Robert Mulroney[_3_]

clear format from RichTextBox
 

When I ran your 3rd macro on a Richtextbox in one of my forms it removed the
fore colour from the text very well.
Nevertheless maybe all you want is:

Private Sub CommandButton5_Click()
With RichTextBox1
.SetFocus
.SelStart = 0
.SelLength = Len(.Text)
.SelColor = RGB(0, 0, 0)
.Refresh
End With
End Sub



- Rm


"RB Smissaert" wrote:

How do I clear the format (font colour only) from a RichTextBox?


When I clear the text (TextRTF) and then put new text in in a different Sub
it works fine, but when I try to do the same in one Sub it doesn't work and
just keep the old format:

Private Sub CommandButton1_Click()
RichTextBox1.TextRTF = "SELECT E.TERM_TEXT FROM ENTRY E WHERE
E.READ_CODE = 'G58..'"
End Sub

Private Sub CommandButton2_Click()
RichTextBox1.TextRTF = vbNullString
End Sub

Private Sub CommandButton3_Click()

Dim strTemp As String

With RichTextBox1
strTemp = .Text
.SetFocus
.SelStart = 0
.SelLength = Len(.Text)
.SelColor = 0
.Text = vbNullString
.TextRTF = vbNullString
.TextRTF = strTemp
.Refresh
End With

End Sub


Number 3 doesn't work (although strTemp is a normal string with no
formatting) but number 1 after number 2
works fine.


RBS



RB Smissaert

clear format from RichTextBox
 
Yes, that does do it indeed.
My mistake was that I was working with a customized RTB that did stop
changes in certain situations.
When I disabled these special properties it worked as expected.

RBS

"Robert Mulroney" '''' wrote in message
...

When I ran your 3rd macro on a Richtextbox in one of my forms it removed
the
fore colour from the text very well.
Nevertheless maybe all you want is:

Private Sub CommandButton5_Click()
With RichTextBox1
.SetFocus
.SelStart = 0
.SelLength = Len(.Text)
.SelColor = RGB(0, 0, 0)
.Refresh
End With
End Sub



- Rm


"RB Smissaert" wrote:

How do I clear the format (font colour only) from a RichTextBox?


When I clear the text (TextRTF) and then put new text in in a different
Sub
it works fine, but when I try to do the same in one Sub it doesn't work
and
just keep the old format:

Private Sub CommandButton1_Click()
RichTextBox1.TextRTF = "SELECT E.TERM_TEXT FROM ENTRY E WHERE
E.READ_CODE = 'G58..'"
End Sub

Private Sub CommandButton2_Click()
RichTextBox1.TextRTF = vbNullString
End Sub

Private Sub CommandButton3_Click()

Dim strTemp As String

With RichTextBox1
strTemp = .Text
.SetFocus
.SelStart = 0
.SelLength = Len(.Text)
.SelColor = 0
.Text = vbNullString
.TextRTF = vbNullString
.TextRTF = strTemp
.Refresh
End With

End Sub


Number 3 doesn't work (although strTemp is a normal string with no
formatting) but number 1 after number 2
works fine.


RBS





All times are GMT +1. The time now is 03:10 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com