Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1816to1820
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
Inhaltsverzeichnis

Wie testen, ob Array1= Array2?

Wie testen, ob Array1= Array2?
14.03.2021 11:54:28
Max
Hallo liebes Forum,
in meiner Tabelle übernehme ich Daten aus dem Übersichts-Sheet. Um weniger Formeln benutzen zu müssen, möchte ich checken, ob vorliegende Daten eines Zeilenbereichs den Solldaten des aktuellen Sheets entsprechen.
Daher: Mit welcher Formel kann ich testen, ob ZeilenArray1 = ZeilenArray2 ?
"Identisch" und "Vergleich" scheinen nur für den Abgleich einer einzelnen Zelle in einem Array gut zu sein.
Ich möchte aber Array (Istdaten) mit Array (Solldaten) vergleichen, ohne die Solldaten mittels Formel in das aktuelle Sheet zu holen. Ist das mit Excel Formel möglich?
Schwierigkeit ist, dass man vielleicht irgendwie mit "Indirekt" den Bereich im Übersichtssheet feststellen müsste (bevor die Vergleichslogik erst beginnen kann), weil die
- Zeile des zu testenden Bereichs,
- Spalte und
- Sheet
eigentlich bekannt sind (wie extrahieren?) über die Formel in B7. Mit der Formel in B7, B8... teste ich, welche Daten im Übersichts-Sheet zu welchem Sheet gehören.
Beispieltabelle:
https://www.herber.de/bbs/user/144764.xlsx
Vielen Dank im Voraus.
Viele Grüße
Max H

22
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wie testen, ob Array1= Array2?
14.03.2021 12:19:15
onur
Schreib einfach, WELCHE Bereiche du vergleichen willst, ich habe keine Lust, alle deine Formeln zu analysieren.

AW: Wie testen, ob Array1= Array2?
14.03.2021 12:40:10
Max
aa!K5:W5 abgleichen mit Übersicht!O17:AA17
(bzw. Solldaten abgleichen mit Istdaten)
Wenn möglich, sollte Zeile 17 automatisch gefunden werden, weil "a4_23_az" mit Merkmal "aa" in Sheet "aa" gehört, aber im Sheet "Übersicht" in Zeile 17 steht.
Gruß und Danke im Voraus
Max

AW: Wie testen, ob Array1= Array2?
14.03.2021 13:33:27
Max
ja, wow, sieht schon ziemlich ziemlich gut aus.
Allerdings verstehe ich nicht, warum deine Logik für einen korrekten Output eine aufsteigende Numerierung in Spalte N erfordert:
https://www.herber.de/bbs/user/144770.xlsx
Ist es möglich, "WAHR" oder "FALSCH" durch Strings auszutauschen? In der Formel einfach "FALSCH" auszutauschen geht nicht, weil boolean.
Vielen Dank im Voraus.
Gruß
Hannes

Anzeige
AW: Wie testen, ob Array1= Array2?
14.03.2021 13:38:13
onur
"Allerdings verstehe ich nicht, warum deine Logik für einen korrekten Output eine aufsteigende Numerierung in Spalte N erfordert:" ? Habe ich doch in der 2. Version geändert.
"Ist es möglich, "WAHR" oder "FALSCH" durch Strings auszutauschen? In der Formel einfach "FALSCH" auszutauschen geht nicht, weil boolean." ? Brauchst doch nur ein WENN drumherum zu packen - siehe hier:
https://www.herber.de/bbs/user/144771.xlsx

AW: Wie testen, ob Array1= Array2?
14.03.2021 14:27:33
Max
Sorry, ich hatte erst im Browser mit deiner vorigen Nachricht gearbeitet und bin jetzt 1h daran gescheitert, deine Formel auf einen anderen Bereich zu übertragen und komme nicht weiter:
https://www.herber.de/bbs/user/144775.xlsx
Wäre extrem dankbar, wenn du schauen könntest, wie ich die Formel an den Bereich anpasse.
Viele Grüße
Max

Anzeige
AW: Wie testen, ob Array1= Array2?
14.03.2021 14:37:07
onur
Du musst
1) Arrayformeln benutzen (also mit STRG ALT ENTER abschliessen)
2) Wenn du ab Z174 gehst statt ab Z1, musst du zu VERGLEICH 173 dazuaddieren, da VERGLEICH nur die RELATIVE Position im Array ausgibt - d.h. wenn Wert in Z174 gefunden wird, gibt VERGLEICH eine 1 aus.
siehe hier:
https://www.herber.de/bbs/user/144776.xlsx

AW: Wie testen, ob Array1= Array2?
14.03.2021 16:13:30
Max
Hatte geklappt, dankeschön.
Ich habe die Formel mal mit mehreren Werten getestet und nun entsteht bei mir inkonsistentes Verhalten, das ich mir nicht erklären kann:
https://www.herber.de/bbs/user/144778.xlsm
Warum klappt die Logik im Sheet "bb", aber nicht im Sheet "aa"?
Warum entsteht trotz str+shift+enter und vorhandener Daten der Eintrag "NV"?
Wieder einmal vielen Dank im Voraus.
Gruß
Max

Anzeige
AW: Wie testen, ob Array1= Array2?
14.03.2021 16:50:18
onur
Weil deine "Beispieldatei" nicht mehr viel mit der Datei, die du jetzt gepostet hast, gemeinsam hat. Ich habe keinen Bock, die Formeln dauernd anzupassen, bloss weil du mal wieder alles geändert hast bzw nicht von Anfang an eine RICHTIGE Beispieldatei gepostet hast.

AW: eine andere Variante wäre ...
14.03.2021 16:12:53
neopa
Hallo Max,
... für den Abgleich mit den Kennnummern in Übersicht!F:F wäre z.B. in aa!F6 so:

=WENN(SUMMENPRODUKT(N(INDEX(Übersicht!O:AA;VERGLEICH(C6;Übersicht!L:L;0);)=AK$4:AW$4))=13;"ok"; "nicht ok")

und Formel (braucht keinen spez. Formelabschluss) nach unten kopieren.
Gruß Werner
.. , - ...

Anzeige
AW: eine andere Variante wäre ...
14.03.2021 16:37:51
Max
Hallo Werner,
vielen Dank für die Antwort. Wenn ich die Formel nutze, gibt die Formel im Sheet "bb" ausschließlich richtige Ergebnisse zurück.
Völlig unplausibel ist für mich, warum in Zeilen 9 und 10 des Sheets "aa" dann "nicht ok" steht, wo doch die Einträge gleich sind. Auch die Sheets sind identisch abgesehen von den zu prüfenden Werten.
Können Sie sich das erklären?
https://www.herber.de/bbs/user/144782.xlsm
(Ich habe zur besseren Validierung die zu vergleichenden Einträge direkt unter den Sollwert kopiert)
Danke im Voraus.
Gruß
Hannes

Anzeige
AW: eine andere Variante wäre ...
14.03.2021 17:05:02
Max
(Kontrollkästchen setzen, weil Frage noch nicht geklärt)

AW: das ist ein anderes vergleichen ...
14.03.2021 17:16:56
neopa
Hallo Hannes,
... offensichtlich willst Du dann nicht mit aa!AK$4:AW$4 vergleiche sondern mit den Daten der aktuellen Zeile.
Dann so in J6:
=WENN(SUMMENPRODUKT(N(INDEX(Übersicht!O:AA;VERGLEICH(C6;Übersicht!F:F;0);)=AK6:AW6))=13;"ok"; "nicht ok")
Gruß Werner
.. , - ...

AW: das ist ein anderes vergleichen ...
14.03.2021 18:25:57
Max
Hallo Werner,
die Daten in AK6:AW14 stehen da eigentlich nicht,
ich habe sie aus dem Sheet "Übersicht" nur dahin kopiert, damit man gleich sieht, ob in Spalte J das richtige Ergebnis steht bzw. damit man sieht, ob aktuellesSheet!$AK$4:$AW$14 = Übersicht!O?:AA?
mit ? = Zeile in Übersicht, in der der Name (also a,b,c,...) der aktuellen Zeile des aktuellen Sheets gefunden wurde.
D.h. ich möchte weiterhin den festen Bereich des aktuellen Sheets mit variablen Bereich im Übersicht-Sheet vergleichen.
Allerdings verstehe ich nicht, warum im Sheet "bb" alles klappt, während es im Sheet "aa" Fehler in Zeile 9 und 10 gibt.
Freue mich und hoffe auf weitere Antworten.
Danke im Voraus.
Viele Grüße
Max H

Anzeige
AW: das ist ein anderes vergleichen ...
14.03.2021 18:31:33
onur
Weil deine Daten ab Zeile 172 stehen, aber deine Formeln (in beiden Blättern) ab Zeile 174 suchen!
Es sieht nur so aus, als ob das eine Blat ok wäre.

AW: das ist ein anderes vergleichen ...
14.03.2021 18:48:20
Max
verwendete Formeln:
Logik zur Bewertung geht über ganze Spalte:
=WENN(SUMMENPRODUKT(N(INDEX(Übersicht!O:AA;VERGLEICH(C6;Übersicht!F:F;0);)=AK$4:AW$4))=13;"ok"; "nicht ok")
Logik zum Daten kopieren ab Zeile 172:
=WENNFEHLER(INDEX(Übersicht!O:O;AGGREGAT(15;6;ZEILE(Übersicht!$F$172:$F$2772) /(Übersicht!$M$172:$M$2772=$B$1);ZEILE(A1)));"")
Daran kann es nicht liegen,
oder was verstehe ich falsch?
Danke und viele Grüße
Max H

Anzeige
AW: das ist ein anderes vergleichen ...
14.03.2021 18:50:12
onur
DAS steht in der Datei, die du gepostet hast:
=WENN(UND($AK$4:$AW$4=INDIREKT("Übersicht!O"&VERGLEICH($C6;Übersicht!F$174:F$271;0) +173&":AA"&VERGLEICH($C6;Übersicht!F$174:F$271;0)+173));"OK";"NICHT OK") 


AW: das ist ein anderes vergleichen ...
14.03.2021 20:17:42
Max
zur Nachricht von 16:50 Uhr: du hast recht; ich bin davon ausgegangen, dass das Übertragen unproblematisch ist; nächstes Mal erstelle ich sofort eine richtige Beispieldatei.
zur Nachricht von 17:19Uhr:
Mit deiner Tabelle (https://www.herber.de/bbs/user/144783.xlsm) verschiebt sich der zu vergleichende Bereich des aktuellen Sheets mit nach unten, was zu falschen Ergebnissen führt.
Wenn ich "$AK4:$AW4" zu "$AK$4:$AW$4" ändere, funktioniert es anscheinend perfekt.
Vielen Dank für deine Geduld!
Zu deiner Nachricht von 18:50Uhr:
Stimmt, ich dachte du beziehst dich auf die neueste Tabelle.

Anzeige
Nein, weiterhin festen mit variablen Bereich vergl
14.03.2021 18:28:30
Max
(Haken, weil Frage noch nicht geklärt)

AW: hierzu ...
14.03.2021 19:08:29
neopa
Hallo Max,
... Deine Daten in Übersicht!F138:F143 sowie Übersicht!MF138:M143 verfälschen die Auswertung, weil meine VERGLEICH()-Formelteil von Zeile 1 an sucht. Stehen denn in Deinem Original dort auch derartige Daten?
Hinzu kommt, dass in aa!AK4:AW4 wie in bb!AK4:AW4 immer nur der jeweils 1.Wert für aa bzw. bb gelistet werden. In aa kann somit gemäß Deinen Daten nur der J6:J7 ein "ok" ergeben. Für andere kann es nur ein "ok" geben, wenn die jeweiligen Werte identisch dem für die 1. "aa" bzw. 1. "bb" Werte sind.
Gruß Werner
.. , - ...

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige