Zelle: 255+ Zeichen zählen. Zeichen unberücksichtigt lassen.
31.05.2024 11:12:37
Opodeldok
Mir macht das nachfolgende Makro ein paar Probleme. Bislang habe ich es auf kurze Texte (Vokabelliste) angewandt. Da lief alles super. Jetzt brauche ich es aber für längere Texte, die auch noch Formatierungsbefehle enthalten (Karteikarten). Dabei sind zwei Probleme aufgetaucht, die ich alleine nicht gelöst bekomme.
Sub Umrechnung()
Dim lngZeile As Long
Dim dblZaehler As Double
Dim dblVielfach As Double
dblVielfach = 15 '== noch festlegen
For lngZeile = 1 To Cells(Rows.Count, 1).End(xlUp).Row
dblZaehler = (Len(Application.Substitute(Cells(lngZeile, 1), " ", "")) _
+ Len(Application.Substitute(Cells(lngZeile, 2), " ", ""))) * dblVielfach
Cells(lngZeile, 3) = CInt(dblZaehler / 60) & " (" & dblZaehler & ")"
Next lngZeile
End Sub
1. Manche Zellen haben über 255 Zeichen. Da meldet mir der Algorithmus den Laufzeitfehler 13. Ich habe herausgefunden, dass Excel theoretisch nur 255 Zeichen in einer Zelle zulässt. Praktisch aber auch mehr möglich ist. Die kann ich dann genauso praktisch auch mit mit der Formel LÄNGE() zählen. Gibt es solch eine praktische Lösung auch für VBA? Oder bin ich darauf angewiesen, mit der Formel LÄNGE() im Tabellenblatt zu arbeiten? Würde natürlich gehen. Wäre aber unschön...
2. Die Zellen beinhalten nun auch fünf unterschiedliche Formatierungsbefehle:
Die Formatierungsbefehle können gar nicht, einzeln oder mehrfach in einer Zelle vorkommen. Auch können unterschiedliche Formatierungsbefehle in einer Zelle vorkommen. Beim Zählen der Zeichen in einer Zelle, würde ich nun gerne alle Formatierungszeichen unberücksichtigt lassen. Ist das in VBA umsetzbar?
Anzeige