Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
492to496
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
492to496
492to496
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zeilenvergleich - Übereinstimmungsgrad

Zeilenvergleich - Übereinstimmungsgrad
28.09.2004 14:28:49
Pascal
Hallo,
die Situation:
Ich möchte gerne wissen, wie weit eine Zeile den Inhalten der darüberliegenden Zeile entspricht.
Schwierigkeit: Ein Vertauschen der Felder in der Folgezeile darf keinen Einfluß auf das Ergebnis haben.
Also:
Zeile 1: Pascal | Klaus | ABC Str | 12345 | Köln
Zeile 2: Klaus | Pascal | 12345 | ABC Str | Köln ergibt eine Übereinstimmung 100% (Alle Daten sind in der überliegenden Zeile vorhanden)
Zeile 3: xxx | Pascal | 12345 | ABC Str | Köln ergibt eine Übereinstimmung 80% (xxx ist nicht vorhanden)
Zeile 4: Köln ergibt eine Übereinstimmung 20% (nur ein Feld stimmt überein)
Ich brauche das, um Datenuploads einer Ursprungstabell zu analysieren ohne jedesmal die exportierten Reports wieder dem Aufbau der Ursprungsreports anzupassen. (jed. über 100 Spalten)
In VBA ist es mir bisher nur geglückt, gezielt einzelne Felder mit anderen zu vergleichen.
Idee?
Gruß und Danke,
Pascal

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilenvergleich - Übereinstimmungsgrad
Boris
Hi Pascal,
1. Zeile: A1:E1
2. Zeile: A2:E2
usw. usw.
Dann in z.B. F2 (und runterkopieren):
=SUMMENPRODUKT(N(ISTZAHL(VERGLEICH(A2:E2;A1:E1;))))/ANZAHL2(A1:E1)
und Zelle als Prozent formatieren.
Grüße Boris
http://www.excelformeln.de
Alternative - etwas kürzer:
Boris
In F2 (und dann runterkopieren):
=SUMMENPRODUKT(ZÄHLENWENN(A1:E1;A2:E2))/ANZAHL2(A1:E1)
Grüße Boris
etwas kürzer - mit kleinem Schönheitsfehler
28.09.2004 15:22:14
Pascal
Danke Boris
das ist eine gute Idee.
Leider liefert die FOrmel bei:
Zeile 1: 1 | 2 | 3 | 4 | 5
Zeile 2: 1 | 1 | 1 | 1 | 1
als Ergebnis 100% Deckungsgleich, da die 1 ja oben bereits vorkommt.
Spielt für mein Problem aber denke ich keine Rolle!!! Insofern vielen Dank.
Aber aus Interesse würde mich eine ganz richtige Lösung schon interessieren:)
Gruß
Pascal
Anzeige
Die Formel war voll daneben...
Boris
Hi Pascal,
...so is richtig:
=SUMMENPRODUKT(ISTZAHL(VERGLEICH(A2:E2;A1:E1;))*(VERGLEICH(A2:E2;A2:E2;)=SPALTE(A:E)))/ANZAHL2(A1:E1)
Grüße Boris
:) jetzt #NV als Ergebnis
28.09.2004 15:41:31
Pascal
Hi Boris,
danke für die Mühe. Hattte die andere Formel jetzt auch im großen Stil ausprobiert. Klappte leider gar nicht.
Bei der neuen bekomme ich leider nur #NV als Ergebnis.
Irgendeine Idee?
Gruß
Pascal
Sin Leerzellen im Bereich?
Boris
Hi Pascal,
falls ja: Eliminieren oder folgende ARRAY-Variante nutzen:
{=SUMME(WENN(A2:E2"";ISTZAHL(VERGLEICH(A2:E2;A1:E1;))*(VERGLEICH(A2:E2;A2:E2;)=SPALTE(A:E)))/ANZAHL2(A1:E1))}
{ } nicht eingeben - Abschluss der Formel mit Strg-Shift-Enter.
Grüße Boris
http://www.excelformeln.de
Anzeige
Leider geht das noch nicht
28.09.2004 16:05:46
Pascal
Hi,
Habe ich gemacht. #NV weg. manchmal geht es auch
aber bei
Z1: Pascal | (leer) | (leer)
Z2: Pascal | 1 | 1
erscheint als Ergebnis 100%, wo es nur 33% sein dürften.
Noch eine Idee? Sonst muss halt ein Makro her, das jede Zelle überprüft.
Gruß und Danke,
Pascal
Lad mal ne Beispielmappe hoch...oT
Boris
Datei
28.09.2004 16:18:42
pascal
hi,
hier ein arg verkürztes Beispiel. Das enthällt glaube ich alles Wichtige.
https://www.herber.de/bbs/user/11409.xls
(ha, zum ersten mal eine Datei hochgeladen:)
Gruß Pascal
Ich versteh noch nicht so ganz...
Boris
Hi Pascal,
was ist denn jetzt mit den Leerzellen?
Sollen diese unberücksichtigt bleiben?
Soll immer durch 3 dividiert werden oder durch die Anzahl der gefüllten Zellen pro Zeile?
Probier mal das - ohne Leerzellen - z.B. in F3 und runterkopieren:
=SUMMENPRODUKT(ISTZAHL(VERGLEICH(A3:C3&"";A2:C2&"";))*(A3:C30)*(VERGLEICH(A3:C3&"";A3:C3&"";)=SPALTE(A:C)))/ANZAHL2(A3:C3)
Grüße Boris
Anzeige
Vielen Dank, funktioniert jetzt prima! oT
30.09.2004 09:38:37
Pascal

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige