Texte aus Zeile kürzen und Rest nächste Zeile einf
13.08.2003 16:54:22
Olli_Mittermeier
ich stoße gerade auf ein Problem, bei dem ich Excel als Zwischenmedium nutze. Folgender Fall:
Ich habe eine Datei Aufbau Spalte 1 eine achtstellige Nummer zur Zuordnung und in der Spalte 2 einen Text. Dieser Text ist länger als er sein dürfte (max. 80 Zeichen). Nun möchte ich den Text auf die folgenden zwei Arten trennen lassen:
1. Nehme den Text bis zur 80. Stelle, suche dafvor ein "," und wenn er eines findet, soll er den restlichen Text ausschneiden, eine Zeile darunter einfügen, die achtstellige Nummer wieder in die 1. Spalte schreiben und den restlichen Text in die 2. Spalte einfügen. Natürlich soll die Prüfung auf die 80 Stellen danach wieder in dieser Zeile erfolgen.
2. Wenn bis zur 80. Stelle kein Komma zu finden war, soll der Text gekürzt werden, bis er ein " " (Leerzeichen) findet und den Prozess wie unter 1. beschrieben weiter fortsetzen.
Ich habe schon einmal so etwas versucht, aber ich bekomme die Kommasetzung nicht geregelt und die zweite Abhängigkeit in Kombination. Folgendes Coding habe ich schon vorliegen:
Sub ueber80zeichenverschieben()
Worksheets("Atexte").Activate
For i = 1 To 100000000
If Cells(i, 1) = "" Then
Exit For
Else
If Len(Cells(i, 2)) > 80 Then
atext = Cells(i, 2)
For m = 1 To 20
a = InStr(72 - m, atext, "", 1)
If a < 72 And a > 0 Then
neuelaenge = 80 - m - 1
Exit For
End If
Next
Cells(i, 2) = Left(atext, neuelaenge)
Rows(i + 1).Insert shift:=xlDown
Cells(i + 1, 1) = Cells(i, 1)
Cells(i + 1, 2) = Right(atext, Len(atext) - neuelaenge - 1)
End If
End If
Next
End Sub
Kann mir geholfen werden?
Viele Grüße!
Oliver Mittermeier