Gleiche Werte in Zeile durch Spaltenwerte ersetzen
#1
Hallo zusammen,

ich sitze jetzt hier vor einer Problematik wo ich keine Lösung zu finde, ob jetzt meine Suche hier im Forum oder das Befragen verschiedener KI´s, haben zu keinem Ergebnis geführt.
Vorab, mit VBA bin ich nicht vertraut und möchte das Problem gerne mit Excelmitteln lösen.
Ich habe zwei recht große Tabellen (ca. 17.000 Zeilen und ca. 100 Spalten) wo in jeder Zeile viele unterschiedliche Werte stehen, allerdings mehrmals auch oft die selben Werte.
Ich möchte die Dubletten, also gleichen Textwerte, durch unterschiedliche Werte aus einer anderen Tabelle ersetzen. Die unterschiedlichen Werte in der anderen Tabelle befinden sich in Spalten.
Die Reihenfolge der neuen Werte in den Zeilen ist unwichtig.
Hat da jemand eine idee wie ich das umsetzen könnte?

Vorab schonmal vielen Dank ?

Gruß Markus

.xlsx   Gleiche Werte.xlsx (Größe: 11,79 KB / Downloads: 15)
Antworten Top
#2
Hallo Markus,

wenn immer nur eine laufende Nummer angehängt werden soll ginge es ohne neue Werte:

=D3&TEXT(ZÄHLENWENN($D3:D3;D3);"00")

wenn aus den neuen Werte die genutzt werden sollen, die den gleichen Anfang haben ginge:

=INDEX($J:$J;AGGREGAT(15;6;ZEILE($J$3:$J$19)/(LINKS($J$3:$J$19;LÄNGE(D3))=D3);ZÄHLENWENN($D3:D3;D3)))


Angehängte Dateien
.xlsx   Gleiche Werte.xlsx (Größe: 12,36 KB / Downloads: 7)
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





[-] Folgende(r) 1 Nutzer sagt Danke an Ego für diesen Beitrag:
  • Mbaer
Antworten Top
#3
Hallo Helmut,

entschuldige bitte, dass ich mich jetzt erst zurück melde.
Ich danke dir vielmals für deine Unterstützung - die AGGREGAT Formel hat tatsächlich den Durchbruch gebracht - mega Danke ?
Zuvor hatte ich noch nie von dieser Funktion gehört oder gelesen, und zugegebenermaßen musste ich im Excel Lexikon mehrmals nachlesen um zu verstehen wie die einzelnen möglichen Werte funktionieren.
Danke Helmut
Antworten Top
#4
Hallo,

alternativ von mir 2 Formelvarianten. Dazu musst du nur jeweils eine einzige Formel eingeben bzw. kopieren. Ausgehend von deiner Beispieldatei, habe ich in den beiden Formeln deine Datenbereiche fett gekennzeichnet.

Formel 1:  Gleiche Werte je Zeile werden durchnummeriert (ohne Neue-Werte-Liste):
=LET(m; $C$2:$H$5; MATRIXERSTELLEN(ZEILEN(m); SPALTEN(m); LAMBDA(i;j; LET(w; INDEX(m; i; j); WENN(ODER(ISTZAHL(w); i = 1); w; LET(zl; ÜBERNEHMEN(ZEILENWAHL(m; i); ; j); w & SUMME(1 * (zl = w))))))))

Formel 2: Jeder Wert pro Zeile wird durch den neuen n. Wert ersetzt (also mit Neue-Werte-Liste):
=LET(m; $C$2:$H$5; nw; $A$3:$A$19; MATRIXERSTELLEN(ZEILEN(m); SPALTEN(m); LAMBDA(i;j; LET(w; INDEX(m; i; j); WENN(ODER(i = 1; j = 1; ISTZAHL(w)); w; LET(zl; ÜBERNEHMEN(ZEILENWAHL(m; i); ; j); nwf; FILTER(nw; REGEXTESTEN(nw; w); w); INDEX(nwf; SUMME(1 * (zl = w)); 1)))))))
Gruß Anton.

Windows 10 64bit
Office365 32bit
Antworten Top
#5
Hallo Anton, 

vielen Dank für deine Antwort. Ich hab das jetzt mit Helmut seiner Formel sehr gut, und vor allem für mich nachvollziehbar, umsetzen können. Ich hab die Angewohnheit, dass ich für mich neue Formeln immer erstmal verstehen muss bevor ich diese Live anwende. Und bei deiner Formel brauche ich schon etwas bis ich die vorab verstehen kann. Aber dankbar bin ich dir dennoch, denn es ist ja nicht selbstverständlich, daß gilt ja auch für Helmut, dass man sich die Zeit nimmt und solche Formeln für andere ausarbeitet.

Gruß Markus
Antworten Top


Gehe zu:


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