Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Markierung in einer Multiline Textbox durch Leerzeichen ersetzen
#1
Liebe Leute,
ich bräuchte für meine Textboxen nochmal eure Expertenhilfe. Ich habe in meiner TextBox im Multiline-Modus mehrere Sätze untereinander stehen. Jetzt möchte ich folgendes machen: ich markiere mit der linken Maustaste irgendwo einen beliebigen Text.

Für die weitere Verarbeitung habe ich ein Keyup Unterprogramm in meine Userform geschrieben:
Code:
Sub TextBox4_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)

Select KeyCode

Case 19 ' Pause Taste
'? gesuchter Code um Markierung durch Leerzeichenstring zu ersetzen

End Select
End Sub
Mit der Pausen Taste soll jetzt die ausgewählte Markierung durch Leerzeichen ersetzt werden. Dabei soll die Länge des Leerzeichenstrings der zuvor ausgewählten Markierungslänge entsprechen.
Wie lautet dafür der VBA Code?

Viele Dank für eure Mühe im voraus.
Antwortento top
#2
Hallo sotaros,

nimm wie beim letzten Mal besser KeyDown:

Code:
Public Sub TextBox4_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
  Select Case KeyCode
    Case 19 ' Pause Taste
      With TextBox4
        If Asc(Right(.SelText, 1)) = 13 Then
          .SelText = String(Len(.SelText) - 1, " ") & Chr(13)
        Else
          .SelText = String(Len(.SelText), " ")
        End If
      End With
      KeyCode = 0

Gruß Uwe
Antwortento top
#3
Hallo Uwe,

vielen Dank für den toll funktionierenden Code.
Antwortento top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste