Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1964to1968
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Text per VBA verändern

Text per VBA verändern
04.03.2024 11:57:32
Gecko
Moin,

ich möchte den Text in einer Zelle verändert anzeigen lassen, dieses per VBA, aber mit einem VBA, was nicht vorher weiß, wie lang der Text sein wird

hier als Beispiel:
Sub TextStyle()

ActiveCell.FormulaR1C1 = "abcdembotc" & Chr(10) & "(Hundestand)" 'hier würden zwei Variablen statt Wörter eingefügt werden
With ActiveCell.Characters(Start:=1, Length:=10).Font
.Name = "Arial"
.FontStyle = "Fett"
.Size = 11
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleSingle
.ThemeColor = xlThemeColorLight1
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
With ActiveCell.Characters(Start:=11, Length:=12).Font
.Name = "Arial"
.FontStyle = "Kursiv"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ThemeColor = xlThemeColorLight1
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
End Sub


Es soll also in der Zelle oben das erste Wort stehen und darunter dann das andere Wort und beide mit einer anderen Formatierung.

Da die Wörter nicht immer die gleiche Länge haben, komme ich mit diesem Makro leider nicht weiter.

Weiß hier jemand ne Lösung?

Danke

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Text per VBA verändern
04.03.2024 12:21:15
Yal
Hallo Gecko,

Leerzeilen im Code bieten absolut keine Mehrwert. Romane sind auch nicht so verfasst. Einzige richtige Hilfe ist das Einrücken.

Probiere wie folgt:
Sub TextStyle()

Dim i As Integer

ActiveCell.FormulaR1C1 = "abcdembotc" & Chr(10) & "(Hundestand)" 'hier würden zwei Variablen statt Wörter eingefügt werden
'Default-Einstellung für alles
With ActiveCell.Font
.Name = "Arial"
.FontStyle = "Fett"
.Size = 11
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleSingle
.ThemeColor = xlThemeColorLight1
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
'Abweichende Einstellung für Zeile 2
i = InStr(1, ActiveCell.Value, Chr(10), vbTextCompare)
If i > 0 Then
With ActiveCell.Characters(Start:=i + 1, Length:=Len(ActiveCell.Value) - i).Font
.FontStyle = "Kursiv"
.Size = 10
.Underline = xlUnderlineStyleNone
End With
End If
End Sub


VG
Yal
Anzeige
AW: Text per VBA verändern
04.03.2024 13:41:00
daniel
HI

dim Var1 as string

dim Var2 as string

Var1 = "abcdembotc"
Var2 ="(Hundestand)"

ActiveCell.value = Var1 & vbLF & Var2
With ActiveCell.Characters(Start:=1, Length:=Len(Var1)).Font
....
End With
With With ActiveCell.Characters(Start:=Len(Var1) + 2, Length:=len(Var2)).Font
....
End with


Gruß Daniel

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige