Dynamisches Abfragen von Werten in einer Excel-Tabelle

Sie können in Excel eine Tabelle nach verschiedenen Kriterien filtern. In diesem Tipp zeigen wir Ihnen, wie Sie Werte in Ihren Tabellen dynamisch abfragen. Auf diese Weise können Sie die Abfrageergebnisse auch in einem anderen Tabellenblatt ausgeben.

Die zugrunde liegende Tabelle hat den Namen Bestellungen und sieht folgendermaßen aus:

Excel-Tabelle mit Bestellungen

In unserem Beispiel wollen wir für einen auszuwählenden Kunden aus der Tabelle die Anzahl der Bestellungen, den Gesamtumsatz, das Datum der letzten Bestellung sowie die Aufstellung der einzelnen Bestellungen mit Warengruppe und Umsatz darstellen.

Der Kunde, dessen Daten abgefragt werden sollen, soll nicht in einer Zelle direkt eingegeben werden, sondern aus einer Liste aller in der Tabelle vorhanden Kunden ausgewählt werden.

Liste aller vorhanden Kunden

Die Liste aller vorhandenen Kunden erstellen Sie mit der folgenden Formel:

= EINDEUTIG(Bestellungen[Kunde];FALSCH;FALSCH)

Die Funktion EINDEUTIG gehört zu den dynamischen Arrayfunktionen. Mit dieser Formel in der Zelle A2 werden alle eindeutigen Einträge in der Spalte Kunde der Tabelle Bestellungen aufgelistet. Im Tabellenblatt sieht die Liste so aus:

Unsortierte Kundenliste

Der zweite Parameter in der Formel steht für Nach_Spalte. Der Wert FALSCH steht für einen Vergleich der Einträge in Zeilen. Mit dem dritten Parameter Genau_einmal legen Sie fest, ob Sie nur Einträge wünschen, die nur ein einziges Mal in der Spalte Kunde existieren. In unserem Beispiel sollen auch Kunden mit mehr als einer Bestellung berücksichtigt werden. Deshalb wird für den dritten Parameter der Wert FALSCH eingetragen.

Die Kundenliste ist nicht sortiert. Die Reihenfolge der Einträge ergibt sich aus dem ersten Vorkommen in der Spalte Kunde von oben nach unten.

Der Zellbereich mit dem blauen Rahmen definiert den Überlaufbereich. Die Größe dieses Bereichs ist dynamisch. Sie ist abhängig von der Anzahl der verschiedenen Kunden in der Tabelle.

Sortierte Liste aller vorhanden Kunden

Um die Kundenliste alphabetisch aufsteigend zu sortierten, wird die Formel in der Zelle A2 folgendermaßen erweitert:

=SORTIEREN(EINDEUTIG(Bestellungen[Kunde];FALSCH;FALSCH))

Die Liste sieht danach so aus:

Sortierte Kundenliste

Die Funktion SORTIEREN sortiert einen Zellbereich aufsteigend. Die Funktion kennt maximal 4 Parameter, wobei in diesem Fall nur der erste Parameter Matrix angegeben werden muss, weil die Liste nur eine Spalte hat und die Zeilen aufsteigend sortiert werden sollen.

Auswahlliste erstellen

Im nächsten Schritt soll eine Auswahlliste in Form eines Dropdownfeldes angelegt werden, um zu bestimmen, für welchen Kunden Informationen aus der Tabelle Bestellungen abgerufen werden sollen. Gehen Sie folgendermaßen vor:

  1. Aktivieren Sie die Zelle, in der die Auswahlliste erscheinen soll.
  2. Klicken Sie im Menüband auf der Registerkarte Daten in der Gruppe Datentools auf die Schaltfläche Datenüberpüfung. Das folgende Dialogbild erscheint:
    Datenprüfung in Excel
  3. Geben Sie im Kombinationsfeld Zulassen den Eintrag Liste ein. Danach sieht das Dialogbild so aus:
    Datenprüfung über Liste in Excel
  4. Geben Sie in dem Eingabefeld Quelle den Zellbezug =$A$2# ein. Die Zelle A2 ist die Zelle, in der der erste Kundenname erscheint. Das #-Zeichen zeigt an, dass der in Zelle A2 beginnende Überlaufbereich mit allen Kunden berücksichtigt werden soll.

Das Tabellenblatt sieht mit Auswahlliste dann so aus:

Auswahl eines Kunden aus Liste

Daten eines Kunden abfragen

Für einen ausgewählten Kunden soll zunächst die Anzahl der Bestellungen ermittelt werden. Die Auswahlliste befindet sich Zelle D2. Der Inhalt dieser Zelle dient als Suchkriterium. Die Formel lautet:

= ZÄHLENWENN(Bestellungen[Kunde];D2)

Der Gesamtumsatz des ausgewählten Kunden errechnen Sie mit der folgenden Formel:

=SUMMEWENN(Bestellungen[Kunde];D2;Bestellungen[Umsatz])

Für die Berechnung des letzten Bestelldatums verwenden Sie folgende Formel:

=MAXWENNS(Bestellungen[Bestelldatum];Bestellungen[Kunde];D2)

Nach der Formatierung des Gesamtumsatzes und des Datums sieht das Tabellenblatt so aus:

Statistische Werte eines Kunden abfragen

Bestellungen eines Kunden abfragen

Im Folgenden sollen die Bestellungen eines ausgewählten Kunden an eine andere Stelle in der Excel-Arbeitsmappe aufgelistet werden. Der Kunde wird wieder über die Auswahlliste in Zelle D2 bestimmt.

Die Liste mit den Bestellungen soll in Zelle J2 beginnen: Geben Sie in Zelle J2 folgende Formel ein:

=FILTER(Bestellungen;Bestellungen[Kunde]=D2)

Das Ergebnis sieht nach den Formatierungen der Datums- und Umsatzspalte so aus:

Bestellungen eines Kunden

Wenn Sie die Spalte Kunde in der Ergebnisliste nicht benötigen, ändern Sie die Formel folgendermaßen ab:

=FILTER(Bestellungen[[Warengruppe]:[Umsatz]];Bestellungen[Kunde]=D2)

In diesem Beispiel werden aus der Tabelle Bestellungen alle Spalten zwischen Warengruppe und Umsatz berücksichtigt: Der Doppelpunkt kennzeichnet einen Bereich von Spalte bis Spalte.

Sie können sich auch nur die Werte in den Spalten Warengruppe und Umsatz, die nicht nebenaneinander stehen, anzeigen lassen. Die Formel in N2 sieht so aus:

=FILTER(FILTER(Bestellungen;Bestellungen[Kunde]=D2);{FALSCH.WAHR.FALSCH.WAHR})

Die innere FILTER-Funktion entspricht der ersten Formel, in der allen Spalten aus der Tabelle Bestellungen angezeigt werden. Die Tabelle wird nochmals mit der äußeren FILTER-Funktion gefiltert. Als zweiten Parameter Einschließen der FILTER-Funktion können Sie eine Matrix eingeben. Diese Matrix steht in geschweiften Klammern. In dieser Matrix wird für jede vorkommende Spalte angegeben, ob Sie in der Ergebnisliste erscheinen soll oder nicht. Der Wert WAHR zeigt an, dass eine Spalte erscheinen soll. Die Matrix muss für jede vorkommende Spalte einen Eintrag aufweisen, und zwar WAHR oder FALSCH. Die Angaben müssen durch einen Punkt getrennt werden. In unserem Beispiel werden die erste Spalte Kunde und die die dritte Spalte Bestelldatum nicht berücksichtigt. Für diesen Spalten steht der Wert FALSCH an der entsprechenden Stelle in der Matrix. Anstelle der Ausdrücke WAHR und FALSCH können Sie auch 1 und 0 in der Formel verwenden.

Das Tabellenblatt sieht so aus:

Bestellungen eines Kunden

Fazit

Wenn Sie in der Zelle D2 einen anderen Kunden auswählen, werden alle Ergebnisse für diesen Kunden ausgegeben. Sie können so sehr variabel Daten aus einer Tabelle abfragen. Wenn in der Tabelle neue Bestellungen bzw. neue Kunden erscheinen, werden diese bei der Auswahl und den Berechnungen sofort berücksichtigt.

Michael Richter

Michael Richter

Autor

Ich unterstütze unsere Kunden in erster Linie durch Programmierung von Datenbankanwendungen und Zusatzmodulen von Microsoft Office. In Seminaren und Tipps auf unserer Blogseite gebe ich mein Wissen weiter.

0 Kommentare

Einen Kommentar abschicken

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Pin It on Pinterest

Share This