175 Aufrufe
Gefragt in Tabellenkalkulation von

Servus !

Habe mal wieder ein Problem:

Habe eine Excel Datei wo in Spalte K viele verscheiden texte stehen.

Hier ein Beispiel:

Mauerwerk der Wand, DIN 1053-1, aus Mauerziegeln, mit Stoßfugenvermörtelung und Dickbettlagerfuge,
Mz 20 - 2,2, DIN V 105-100,  MG II a, DIN V 18580,
Dicke 24 cm

Jetzt soll an jeder  34 Stelle ein Zeilenumbruchzeichen ÿÿ meines ERP Programms eingefügt werden

Kann man sowas über ein Befehl lösen ?
 

2 Antworten

0 Punkte
Beantwortet von m-o Profi (22.7k Punkte)
ausgewählt von halfstone
 
Beste Antwort

Hallo Carten,

das kannst du mit einem Makro machen. Kopiere das folgende Makro in ein Standard-Modul deiner Arbeitmappe:

Sub Zeilenumbruch()

Dim lngLetzte As Long
Dim lngZeile As Long
Dim i As Long
Dim strTextneu As String

'letzte beschriebene Zeile in Spalte K ermitteln
lngLetzte = ActiveSheet.Cells(Rows.Count, 11).End(xlUp).Row

'alle Zeilen durchlaufen
For lngZeile = 1 To lngLetzte
   'prüfen ob Inhalt der Zelle in Spalte K länger als 34 Zeichen ist
   If Len(Cells(lngZeile, 11)) > 34 Then
     'falls ja dann nach 34 Zeichen die Zeilenumbruchzeichen einfügen
     For i = 0 To WorksheetFunction.RoundUp(Len(Cells(lngZeile, 11)) / 34, 0) - 1
       strTextneu = strTextneu & Mid(Cells(lngZeile, 11), 1 + 34 * i, 34) & Chr(255) & Chr(255)
     Next i
     'letzte Zeilenumbruchzeichen entfernen
     strTextneu = Left(strTextneu, Len(strTextneu) - 2)
     'neuen Text zurück in Zelle schreiben
     Cells(lngZeile, 11) = strTextneu
     'Variable für neuen Text löschen
     strTextneu = ""
   End If
Next lngZeile

End Sub

Probiere das aber erst einmal in einer Testdatei aus.

Gruß

M.O.

0 Punkte
Beantwortet von
Danke, hat geklappt

Thanks
...