Excel soll nach x Zeichen Leerzeichen erkennen und Text trennen
#1
Hallo an alle,

ich glaube, heute habe ich ein aufwändigeres Anliegen, zumindest fällt mir dazu noch keine geeignete Funktion ein.

Ich habe eine Liste, in Spalte A stehen Zutaten in folgender Form:
Zitat:Heidelbeere, Erdbeere, Stachelbeere, Holunderbeere, Preiselbeere, Sanddorn, Himbeeren, Brombeeren

In Spalte B, C, D und E sind die Zutaten manuell eingegeben, allerdings höchstens 45 Zeichen lang, danach gehen die Zutaten in der nächsten Spalte weiter.
In diesem Fall stehen in Spalte B:
Zitat:Heidelbeere, Erdbeere, Stachelbeere,

In Spalte C:
Zitat:Holunderbeere, Preiselbeere, Sanddorn,

Und in Spalte D:
Zitat:Himbeeren, Brombeeren

Spalte E ist leer.

Bis hierhin kein Problem.
Nun gibt es aber die Möglichkeit, die Zutaten in Spalte A zu überschreiben, nämlich wenn man Zutaten im Feld F3 einträgt.
Dabei werden die Zutaten in Spalte A überschrieben, in den Spalten B bis E bleiben sie aber natürlich stehen, da sie ja manuell eingetragen wurden.

Ich benötige also jetzt in den Spalten B bis E eine Formel, die erkennt, ob in F3 etwas steht und falls nicht die bisher eingetragenen Zutaten anzeigt.
Dies ist nicht weiter schwer und habe ich schon umgesetzt.

Wenn in F3 etwas steht, soll die Formel aber die neuen Zutaten in die 4 Spalten einordnen, Excel muss also erkennen können, bis wohin 45 Zeichen gehen
und dort dann das Leerzeichen finden und den Text abschneiden.

Um das Ganze anschaulicher machen zu können, habe ich eine Beispieldatei dafür erstellt, die ich hier anhänge.

Ich würde mich über Tips zu passenden Funktionen sehr freuen.

Danke und ein schönes Wochenende
TxM


Angehängte Dateien
.xlsx   Beispiel-Zutaten-teilen.xlsx (Größe: 10,94 KB / Downloads: 10)
Antworten Top
#2
Ohne Kenntnis der Datei:

Das erste Leerzeichen nach 45 beliebigen Zeichen:

Code:
pos = instr(45, cells(1,1), " ")

mfg
Antworten Top
#3
Hallo TxM,

in Deiner älteren XL-Version kämst Du mit folgenden Formel zum von Dir angestrebten, wenn als Trennzeichen immer ", " eingesetzt ist:
  • In A3: =WENN(F3="";"Heidelbeere, Erdbeere, Stachelbeere, Holunderbeere, Preiselbeere, Sanddorn, Himbeeren, Brombeeren";F3)
  • in B3: =LINKS($A3;AGGREGAT(14;6;ZEILE(A$1:A$45)/(TEIL($A3&",";ZEILE(A$1:A$45);1)=",");1))
  • in C3: =GLÄTTEN(LINKS(TEIL($A3;LÄNGE(B3)+1;999);AGGREGAT(14;6;ZEILE(A$1:A$45)/(TEIL(TEIL($A3;LÄNGE(B3)+1;999)&",";ZEILE(A$1:A$45);1)=",");1)))
  • in D3:  =GLÄTTEN(LINKS(TEIL($A3;LÄNGE(B3)+LÄNGE(C3)+2;999);AGGREGAT(14;6;ZEILE(B$1:B$45)/(TEIL(TEIL($A3;LÄNGE(B3)+LÄNGE(C3)+2;999)&",";ZEILE(B$1:B$45);1)=",");1)))
  • in E3:  =GLÄTTEN(LINKS(TEIL($A3;LÄNGE(B3)+LÄNGE(C3)+LÄNGE(D3)+3;999);AGGREGAT(14;6;ZEILE(B$1:B$45)/(TEIL(TEIL($A3;LÄNGE(B3)+LÄNGE(C3)+LÄNGE(D3)+3;999)&",";ZEILE(B$1:B$45);1)=",");1)))

Die Formeln kannst Du nach unten kopieren.
Gruß Werner
.. , - ...
[-] Folgende(r) 1 Nutzer sagt Danke an neopa für diesen Beitrag:
  • TxM
Antworten Top
#4
Hallo Werner, vielen Dank für deine Antwort.
Es ist echt immer wieder erstaunlich, was Excel so alles kann. 28

Vielen Dank und ein schönes Wochenende!
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste