Excel Spalte teilen (nach max. Länge und Wörtern)
Guten Tag, ich habe folgendes Problem:
In dem Feld A1 steht z.B.: Zylinderschraube DIN912 M5x25 A2
Das Feld darf jetzt aber nur noch 20 Zeichen beinhalten, alles was darüber hinaus geht, soll in das Feld B1 kopiert werden.
Habe dafür auch schon die Funktion "TEIL" gefunden, bloß leider schneidet die Funktion das Feld nach genau 20 Zeichen ab.
Leider passt das dann sehr häufig nicht mehr mit den Wörtern im Feld zusammen.
Bei dem Beispiel würde dann z.B. im Feld A1 "Zylinderschraube DIN" stehen und der Rest im anderen Feld. Das macht natürlich nicht ganz so viel Sinn.
Excel müsste dann z.B. im Feld A1 nur Zylinderschraube stehen lassen und den Rest in das nächste Feld kopieren.
Es würde aber leider auch nicht ausreichen, wenn nach dem ersten Wort abgeschnitten wird, weil evtl. die ersten 3 Wörter bloß 14 Zeichen lang sind und auch zusammen gehören z.B. Handrad Typ 50 (Feld A1) und dann Linksgewinde (Feld B1). Deshalb funktioniert auch die Funktion Text in Spalten nicht.
Hat evtl. jemand eine Lösung für mein Problem, denn es wäre echt mühselig, wenn man nachher durch alle Zeilen gehen muss und die Werte anpassen.
Gruß
Kattnerzone
In dem Feld A1 steht z.B.: Zylinderschraube DIN912 M5x25 A2
Das Feld darf jetzt aber nur noch 20 Zeichen beinhalten, alles was darüber hinaus geht, soll in das Feld B1 kopiert werden.
Habe dafür auch schon die Funktion "TEIL" gefunden, bloß leider schneidet die Funktion das Feld nach genau 20 Zeichen ab.
Leider passt das dann sehr häufig nicht mehr mit den Wörtern im Feld zusammen.
Bei dem Beispiel würde dann z.B. im Feld A1 "Zylinderschraube DIN" stehen und der Rest im anderen Feld. Das macht natürlich nicht ganz so viel Sinn.
Excel müsste dann z.B. im Feld A1 nur Zylinderschraube stehen lassen und den Rest in das nächste Feld kopieren.
Es würde aber leider auch nicht ausreichen, wenn nach dem ersten Wort abgeschnitten wird, weil evtl. die ersten 3 Wörter bloß 14 Zeichen lang sind und auch zusammen gehören z.B. Handrad Typ 50 (Feld A1) und dann Linksgewinde (Feld B1). Deshalb funktioniert auch die Funktion Text in Spalten nicht.
Hat evtl. jemand eine Lösung für mein Problem, denn es wäre echt mühselig, wenn man nachher durch alle Zeilen gehen muss und die Werte anpassen.
Gruß
Kattnerzone
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 126798
Url: https://administrator.de/contentid/126798
Ausgedruckt am: 22.11.2024 um 13:11 Uhr
3 Kommentare
Neuester Kommentar
Hallo,
ich fasse mal zusammen du brauchst eine Funktion die dir nach 20 Zeichen etwas trennt,
wobei aber die Sinnhaftigkeit erhalten bleibt?
Dann hab ich die Lösung für dich:
Besorg dir nen Praktikant!
Alternativ würde ich über ein Macro schaun wo das erste Leerzeichen ist und dort trennen.
wenns über 20 Zeichen ist, tja....
ich fasse mal zusammen du brauchst eine Funktion die dir nach 20 Zeichen etwas trennt,
wobei aber die Sinnhaftigkeit erhalten bleibt?
Dann hab ich die Lösung für dich:
Besorg dir nen Praktikant!
Alternativ würde ich über ein Macro schaun wo das erste Leerzeichen ist und dort trennen.
wenns über 20 Zeichen ist, tja....
Guten Morgen Kattnerzone,
also, du könntest mit folgendem kleinen Macro eine Trennung bewerkstelligen:
Du könntest jetzt natürlich auch die IF Abfrage gegen eine SELECT CASE Abfrage tauschen und noch mehr Bedingungen setzten.
Allerdings kann das Macro nie wissen wo du deinen String am liebsten trennen möchtest ....
Gruß Sam
also, du könntest mit folgendem kleinen Macro eine Trennung bewerkstelligen:
Sub test()
Dim a As String 'Variable deklarieren / Zellenwert als String!
a = Range("a1").Value 'Wert aus Zelle in Variable "a" einlesen
If Len(a) > 20 Then 'Prüfen ob String länger wie 20 Zeichen
Range("A1").Value = Mid(a, 1, 20) 'Inhalt von "a" bis Zeichen 20 in Zelle A1 schreiben
Range("B1").Value = Mid(a, 21) 'Inhalt von "a" ab Zeichen 21 in Zelle B1 schreiben
End If
a = Nothing 'Variable zerstören
End Sub
Du könntest jetzt natürlich auch die IF Abfrage gegen eine SELECT CASE Abfrage tauschen und noch mehr Bedingungen setzten.
Allerdings kann das Macro nie wissen wo du deinen String am liebsten trennen möchtest ....
Gruß Sam