Microsoft Excel

Herbers Excel/VBA-Archiv

Text Formatieren

Betrifft: Text Formatieren von: Carsten
Geschrieben am: 24.11.2014 15:46:24

Hallo zusammen,

habe eine kleine Frage und hoffe sie von jemandem hier aus dem Forum beantwortet zu bekommen.

Ich habe mir folgendes kleines Macro geschrieben um das Datum plus einen Namen an den Ende eines bestehenden Textes in einem Feld ein zu fügen.

Dim TXT, N, D
TXT = ActiveCell.Value
N = "_gersdorfo:"
D = Format(Date, "yyyy-mm-dd")

ActiveCell.Value = TXT & vbCrLf & vbCrLf & D & N & vbCrLf

End Sub

Nun machen wir folgende Punkte noch Probleme:

1. Nach dem Auslösen des Macros soll das Feld zur Eingabe durch den Benutzer bereit/aktiv sein
2. Es soll nur der eingefügte Text (Datum+Name) kursiv dargestellt sein. Der "alte" Text soll seine alte Formatierung behalten.
3. Das Format mit dem der Benutzer weiter schreibt soll wieder "normal" also nicht kursiv sein.

Kann mir dabei jemand weiter helfen. Wäre euch echt sehr dankbar.

  

Betrifft: AW: Text Formatieren von: yummi
Geschrieben am: 24.11.2014 16:47:45

Hallo Carsten,

z.B. so:

in den Code deines Arbeitsblattes (das bewirkt bei Anklicken einer Zelle, dass dein Makro startet und stellt die Zeilenhöhe ein)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
schreibe
ActiveSheet.Rows(Target.Row & ":" & Target.Row).Rows.AutoFit

End Sub
In ein Modul dann noch dein Makro (hab es mal schreiben genannt)
Sub schreibe()
Dim TXT, N, D
Dim laenge As Integer
Dim start As Integer

TXT = ActiveCell.Value
N = "_gersdorfo:"
D = Format(Date, "yyyy-mm-dd")

    start = Len(TXT) + 1
    laenge = Len(vbCrLf & vbCrLf & D & N)
    ActiveCell.Value = TXT & vbCrLf & vbCrLf & D & N & vbCrLf

    ActiveCell.Characters(start:=start, Length:=laenge).Font.FontStyle = "Kursiv"

End Sub
Gruß
yummi


  

Betrifft: AW: Text Formatieren von: Carsten
Geschrieben am: 25.11.2014 06:59:49

Hallo yummi,

erstmal vielen vielen Dank für die schnelle Antwort. Da bin ich schon mal einen Schritt weiter. Jetzt passt nur eine Sache noch nicht: Der alte bestehende Text soll nicht in der Formatierung zurückgesetzt werden. sondern soll so bleiben wie er ist.
Bei dem von dir geschriebenen ist das nicht so. So sollte es sein:

2014-10-21_hofackerd:
TEXT1 TEXT1 TEXT1

2014-11-18_hofackerd:
TEXT2 TEXT2 TEXT2

2014-11-24_hofackerd:
TEXT3 TEXT3 TEXT3


 

Beiträge aus den Excel-Beispielen zum Thema "Text Formatieren"