Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

Excel 2013 VBA für Profis

Textlänge ermitteln

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Um die Länge von Texten zu ermitteln, stellt VBA die Len-Funktion bereit. Sie zählt die Anzahl der enthaltenen Zeichen, nicht aber deren "metrische" Länge in einer bestimmten Schriftart und -größe.

Transkript

Die nächste Funktion, die ich Ihnen vorstellen möchte, misst die Länge eines Textes. Dabei gibt es oft das Missverständnis, dass die Breite vermutet wird, also die Angabe in Zentimetern, in Punkt, oder was auch immer. Es ist aber die Länge, nämlich die Anzahl der Zeichen gemeint. Deswegen kann ich jetzt schon mit Sub AnzahlZeichenMessen die Prozedur benennen. Und die Funktion, die ich gleich aufrufe, heißt Len, das ist die abgekürzte Version von "length", Länge. Und die wende ich dann mal einfach an auf das erste Beispiel. Und wenn ich das mit F5, natürlich nach dem Speichern, ausführe, dann sehe ich jetzt hier, dass dieser erste Text aus 15 Zeichen besteht. So weit, so unspektakulär. Sie fragen sich an der Stelle wahrscheinlich schon so ein bisschen, wofür ist die Len-Funktion denn dann gut, wenn sie nicht wirklich die Breite, sondern nur die Anzahl der Zeichen misst. Zum einen natürlich, wenn Sie wissen, in irgendeinem Datenfeld, wenn Sie es mal mit Tabellen, die in Datenbanken gespeichert sind, zu tun haben, wenn Sie wissen, dass dort die Anzahl der Zeichen begrenzt ist, können Sie das vorher prüfen. Aber viel häufiger gibt es Steuerelemente, die im Platz begrenzt sind. Das sind oft Listenfelder, manchmal sogar Label, also Beschriftungen, oder eben auch Registerkarten, die automatisch breiter werden und irgendwann so breit sind, dass man da keine zwei Registerkarten mehr nebeneinander sieht. Dann ist es auch sinnvoll, Text zu begrenzen. Dafür möchte ich mir eine Funktion schreiben, die das leistet. Also eine Function, die, sagen wir, Textbis10Zeichen zurückgibt. Und einen Parameter kriegt: (strText As String). Das ist der Weg hinein, das ist der komplette Text. Und einen Rückgabewert natürlich auch hat , As String, der dann der gekürzte Text ist. Und wenn er gekürzt ist, soll man das natürlich auch sehen, und also drei Pünktchen kriegen. Und dann kann ich erstmal prüfen. Wenn die Länge von strText größer ist als mein zu untersuchender Wert, also größer als 10, dann muss ich was machen. Else kann ich den Text so zurückgeben. Das heißt, im Else-Fall ist es relativ einfach. Da ist Text bis 10 Zeichen einfach gleich dem übergebenen Parameter. Ein bisschen anders ist es im Fall, wenn ich da einen Text habe, den ich kürzen muss. Dann ist TextBis10Zeichen =, und jetzt nehme ich Left von strText, also nur den ersten Teil. Und nämlich nur 10 Stück. Und damit man auch sieht, dass es abgeschnitten wurde, habe ich hier also drei Pünktchen drangehängt, dass da noch was kommt. Tatsächlich werden Sie feststellen, wenn der Text beispielsweise 11 Zeichen lang ist, dann wird da genau 1 Zeichen abgeschnitten und drei Pünktchen drangehängt. Deswegen sieht es meistens besser aus, wenn man dann sagt. Ich nehme jetzt trotzdem nur 8 Zeichen und verkürze das. Das ist einfach nur, dass man nicht genau 1 Zeichen abschneidet. Und jetzt kann ich zu Testzwecken wieder eine Prozedur bauen, die heißt zum Beispiel Sub TexteKuerzen und ruft diesen TextBis10Zeichen auf, aber natürlich als Funktion, als function, deswegen ein Debug.Print davor. Und ich übergebe ihm, nehmen wir ruhig die Konstanten von da oben. Einmal das Beispiel. Und mit Debug.Print TextBis10Zeichen einen Text, der mit Sicherheit kürzer ist, der also funktionieren muss. Und das kann ich hier schonmal löschen. Das Ganze speichern. Und wenn ich das jetzt mit F5 ausführe, dann sehen Sie einmal die gekürzte Fassung und die ungekürzte Fassung, weil der einfach unter 10 Zeichen ist. Diese Funktion hat den Vorteil, dass ich hier automatisch und zentral einen Wert vorgeben kann, wie viel der gekürzt wird. ein bisschen ungeschickt ist natürlich, dass die Zahl der Funktion hier im Namen vorkommt, aber Sie können Sie bei Gelegenheit ja dann entsprechend anpassen. Also die Len-Funktion, length müsste man eigentlich sagen, dient dazu, die Anzahl der Zeichen zu ermitteln. Und im Zusammenhang mit beispielsweise der Left-Funktion können Sie dann dafür sorgen, dass nur eine bestimmte Anzahl Zeichen wieder zurückgegeben wird.

Excel 2013 VBA für Profis

Nutzen Sie die Möglichkeiten der Programmiersprache VBA in Excel 2013, um eigene Dialoge zu erstellen, auf andere Arbeitsmappen zuzugreifen und wichtige Funktionen einzusetzen.

4 Std. 59 min (53 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!