VBA Zeilenumbruch in einer Zelle

derFREAK27

Member
Themenstarter
Registriert
8 Mai 2012
Beiträge
267
Hallo miteinander! :)

Ich habe mich letzte Woche schon verrückt gegooglet, rumprobiert und alles mögliche versucht, aber irgendwie komme ich nicht weiter.

In einer Exceltabelle habe ich in Spalte A bis zum Zeilenende unterschiedlich lange Strings.
Ein (!) String schaut z.B. so aus und steht in einer Zelle:

12345 XYZ ABCDF; 1245Hallo Hallo, wie geht's; VBA123 45VBA; Computer12345 Computer; ........

Jetzt möchte ich in diesen String nach jedem ";" einen Zeilenumbruch einfügen und den String aber mit den Zeilenumrüchen in der gleichen Zelle behalten.
Das sollte für jeden String bis zum Zeilenende geschehen.

Hat vielleicht jemand eine Idee?

Danke schon mal :thumbsup:.
 
Zuletzt bearbeitet:
Hallo!

Ich hab nun doch eine Lösung gefunden:

Code:
For i = 1 To letzte_Zeile
    Selection.Replace What:=";", Replacement:=";" & vbLf, LookAt:=xlPart
    Cells(ActiveCell.Row + 1, ActiveCell.Column).Activate
Next i

In der Schleife wird bis zur letzten Zelle alle zellen durchgelaufen und falls ein ";" gefunden wird, wird es durch ";" & vbLf ersetzt.
vbLf ist in VBA der Zeilenumbruch.

Vielleicht kann ja jemand was damit anfangen :).
 
Das erinnert mich doch glatt an 80er Zeiten, wo ich für einen uralten, amerikanischen Original-CENTRONICS-Zeilendrucker einen neuen, "deutschen" Treiber geschrieben habe. Kommt in der Textzeile die Zeichenkette <CR> vor, unterdrücke ihn am Bildschirm, führe aber einen Carriage Return einen Line Feed am Drucker durch. Das waren, glaube ich, die CTRL-Befehle 13 und 10, also 0D und 0A.

Musste man aber einen Umlaut wie ü drucken, führe folgende Befehle durch: Drucke ein u, setze mit dem Wagen eine Position zurück und drucke auf das u ein Anführungszeichen " drauf, weil der alte 128-ASCII-Code, der noch vom klassischen Telegramm-Fernschreiber (+++ ankomme donnerstag 15,10 uhr muenchen hbf +++ gruesse heinz +++) stammte, keine Umlaute (Sonderzeichen) kannte. Auf dem Bildschirm wurde aber ue angezeigt.

Auch in Deinem Fall geht es ja letztlich darum, ein CR einzufügen, ohne den Zeilenumbruch innerhalb von Excel durchzuführen: Man braucht Programmroutinen, die Textzeilen durchforsten, auswerten und manipulieren. Wie immer benutzt man Strings, die Steuerbefehle einfach als Zeichenkette interpretieren, anstatt sie wirklich am Bildschirm anzuzeigen oder zu drucken. Irgendwie hat sich seit WORDSTAR & Co. eben doch nicht viel geändert... :)
 
Zuletzt bearbeitet:
Haha, ja da hast Du wirklich Recht! Die Probleme bleiben die gleichen, nur die Hardware schaut doch ein bisschen schöner aus ;)
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben