Excel - Finden Sie heraus, wie oft ein Artikel zusammen mit einem anderen Artikel bestellt wird

708
Merddyn

Ich habe eine Tabellenkalkulationstabelle, die in einem Monat ausgeliefert wurde, und in jeder Zeile habe ich eine Lieferungsnummer und eine Artikelnummer. Ich versuche einen Weg zu finden, um herauszufinden, welche Artikel häufig zusammen bestellt werden.

Zum Beispiel:

Tabelle der Artikel und Lieferung

Mit einer Ausgabe von etwas in der Richtung von

Zeiten mit einem anderen Artikel bestellt

Ich habe Zugriff auf Office, aber darüber hinaus keine ganze Menge Software.

Danke für deine Hilfe!

0
Ich habe nicht so viel Erfahrung mit Excel, also habe ich vor allem versucht, Pivot-Tabellen zu manipulieren, um zu sehen, ob ich die richtigen Ergebnisse erzielen konnte. Bis vor einigen Wochen war die am weitesten fortgeschrittene Funktion, die ich verwendet hatte, = SUMME (x: x). , aber mein neuer Job arbeitet an dem, was im Wesentlichen auf Excel-basierten Datenbankzugriffen basiert, so dass ich mir viel Excel beibringen muss, da mir auch nicht wirklich viel Orientierung gegeben wird. Merddyn vor 6 Jahren 2
Ich denke, das ist ein Job für Pivot Table. Jede Formel, die Sie erhalten, wird verrückt zu machen und verrückter zu halten sein. Pivot-Tabellen sind sehr einfache und extrem leistungsfähige Werkzeuge. Eleshar vor 6 Jahren 0

1 Antwort auf die Frage

2
Scott Craner

Verwenden Sie diese Matrixformel:

=IF($D2=E$1,"X",SUM(--(ISNUMBER(MATCH(INDEX($A:$A,N(IF(,MODE.MULT(IF($B$2:$B$15=$D2,ROW($B$2:$B$15)*))))),INDEX($A:$A,N(IF(,MODE.MULT(IF($B$2:$B$15=E$1,ROW($B$2:$B$15)*))))),0))))) 

Da es sich um eine Array-Formel handelt, muss diese beim Verlassen des Bearbeitungsmodus mit STRG-UMSCHALT-EINGABE anstelle von EINGABE bestätigt werden.

Diese Formel erstellt zwei Arrays der Delivery-Nummern:

MODE.MULT(IF($B$2:$B$15=$D2,ROW($B$2:$B$15)*)) 

Erstellt ein Array mit Zeilennummern, bei denen der Wert in D2 oder E1 in der anderen Hälfte gefunden wird.

Diese Zeilennummer durchläuft die, N()die das Array zwingt, INDEXund erzeugt dann das Array von Lieferungen, die diesen Artikel geliefert haben.

Das MATCH()iteriert das erste Array und prüft, ob es im zweiten Array gefunden wird. Wenn es gefunden wird, wird eine Zahl zurückgegeben, wenn nicht ein Fehler.

Der ISNUMBER()Rückgabewert ist TRUE / FALSE basierend auf der MATCH-Nummer oder dem Fehler.

Das --wandelt TRUE / FALSE in 1/0 um, und SUMME summiert dieses letzte Array.

Sieht aus wie es für das Beispiel funktioniert! Jetzt überlege ich nur, wie ich es in die eigentliche Tabelle übersetzen kann. Vielen Dank! Merddyn vor 6 Jahren 0
Bitte entschuldigen Sie meine Unerfahrenheit mit Excel. Was sind die und für / was machen sie? Merddyn vor 6 Jahren 0
Sie sind Arrays, das erste ein Array mit einem Element, das nächste ein Array mit zwei Elementen. Scott Craner vor 6 Jahren 0
Okay, habe es klappen lassen! ... Abgesehen davon, dass Excel beim Testen einer Woche mit Daten zum Stillstand kommt (... bei 2265 Artikelnummern ...) ... Und ich habe die Formel nur in eine Spalte eingefügt ... Ich Wenn Sie das Gefühl haben, es auf einen Monat mit Daten anzuwenden, wird dies ein wenig aus dem Rahmen fallen. Vielen Dank für Ihre Hilfe! Merddyn vor 6 Jahren 0