Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeile von KGrößte in einer Matrix

Forumthread: Zeile von KGrößte in einer Matrix

Zeile von KGrößte in einer Matrix
01.04.2020 23:43:20
KGrößte
Hallo in die Runde,
vielleicht könnt ihr mir helfen. Ich habe eine Datensammlung wie dieser hier:
| A B C D E F G
1 23 25 1 4 6 9 7
2 5 3 1 6 8 10 5
3 1 20 3 25 7 8 12
Ich möchte nun aus dieser Matrix die Zeile und Spalte bestimmen, in der der größte (oder auch zweitgrößte) Wert liegt.
Eine Lösung Summenprodukt (SUMMENPRODUKT((A1:G3=KGRÖSSTE(A1:G3;1))*(ZEILE(A1:G3))) scheidet leider aus, weil es dabei Probleme mit doppelt vorkommenden Werten gibt.
Wer kann mir hier auf die Sprünge helfen?
Gruß
Zehbart
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Koordinaten bestimmen
02.04.2020 10:23:30
Zehbart
Klasse, das funktioniert super. Besten Dank!
Anzeige
AW: alle "Koordinaten" von mehreren MAX-Werten ...
02.04.2020 19:28:04
mehreren
Hallo,
... in Deinen Beispieldaten sind es zwei Werte die das MAX darstellen.
Es könnten aber im wirklichen Auswertungsbereich evtl. auch noch weitere MAX-Werte vorhandenen sein. Egal ob 1, 2 oder mehrere, all deren Zelladressen lassen sich mit nur einer Formel (entsprechend oft kopiert) bestimmen.
Sollte das für Dich noch von Interesse sein, müsstest Du nur Deine Excelversion angeben, mit der Du dieses ermittelt willst.
Gruß Werner
.. , - ...
Anzeige
AW: alle "Koordinaten" von mehreren MAX-Werten ...
03.04.2020 11:55:59
mehreren
Hallo Werner,
ich würde tatsächlich gerne auf Dein Angebot zurückkommen. Im Einsatz ist Office Home and Business 2016.
Die Lösung von WF ist schon sehr gut, allerdings komme ich tatsächlich in Schwierigkeiten, wenn ein Wert mehrmals vorkommt. Da bei dieser Lösung immer nur ganze Zeilen bzw. ganze Spalten (je nach Variante) betrachtet werden, bin ich mit kgrößte nicht weiter gekommen...
Von daher bin ich gespanntauf Deinen Ansatz!
Grüße
Zehbart
Anzeige
im Prinzip ist es einfach
03.04.2020 13:50:32
WF
Hi,
schreib in H1:
{=KKLEINSTE(WENN(A$2:F$19="x";ZEILE($2:$19));ZEILE(X1))}
und in i1:
=VERGLEICH("x";INDEX($A:$F;H1;0);0)
beide runterkopieren
Nur, wenn "x" in einer Zeile mehrfach vorkommt, muss man bei i1 noch fummeln.
WF
i1 bei mehreren "x" pro Zeile
03.04.2020 14:25:57
WF
Hi,
folgende Arrayformel:
{=KKLEINSTE(WENN(INDIREKT("A"&H1&":F"&H1)="x";SPALTE(A:F));ZÄHLENWENN(H$1:H1;H1))}
runterkopieren
WF
Anzeige
AW: auch wenn mehrere in gleicher Zeile/Spalte ...
03.04.2020 14:25:33
neopa
Hallo Zehbart,
... mit einer Formel, die auch keines spez. Formelabschluss wie eine klassische Matrixformel benötigt.
Jedoch hab ich die Formel bewusst "zerpflückt" in Teilformeln und diese als benannte Formeln definiert (sind zwingend bei aktivierter Zelle I1 für das Beispiel - so zu definieren), denn so dürfte die Formellösung etwas einfacher nachvollziehbar sein.
Nachfolgende Zellformel I1 wertet zunächst die Daten in den Spalten und dann in den Zeilen aus, wenn Du diese ziehend weit genug nach unten kopierst:
Arbeitsblatt mit dem Namen 'AGGR_200402_1'
 ABCDEFGHI
1232514697 $B$1
253168105 $B$3
312532572512 $C$4
42252517242523 $D$3
5        $F$3
6        $F$4
7         

NameBezug
_AWB=!$A$1:$G$99-ZEILE(!$A$1:$A$99)%%-SPALTE(!$A1:$G1)%
_AWB_MAX=AGGREGAT(14;6;_AWB;ZEILE(!A1))
_AWB_Vgl=!$A$1:$G$99=MAX(!$A$1:$G$99)

ZelleFormel
I1=WENNFEHLER(ADRESSE(AGGREGAT(15;6;ZEILE(A$1:A$99)/(_AWB=_AWB_MAX)/_AWB_Vgl;1);AGGREGAT(15;6;SPALTE(A1:G1)/(_AWB=_AWB_MAX)/_AWB_Vgl;1));"")
Verwendete Systemkomponenten: [Windows (32-bit) NT 6.02] MS Excel 2010
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg

Gruß Werner
.. , - ...
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Zeile von KGrößte in einer Matrix bestimmen


Schritt-für-Schritt-Anleitung

Um die Zeile und Spalte des größten Wertes in einer Matrix mit der Funktion KGRÖSSTE in Excel zu bestimmen, gehe wie folgt vor:

  1. Daten vorbereiten: Stelle sicher, dass deine Daten in einem zusammenhängenden Bereich vorliegen. Zum Beispiel hast du eine Matrix wie folgt:

    A B C D E F G
    1 23 25 1 4 6 9
    2 5 3 1 6 8 10
    3 1 20 3 25 7 8
  2. Formel zur Bestimmung der Zeile: Verwende die folgende Formel, um die Zeile des größten Wertes zu finden:

    =VERGLEICH(KGRÖSSTE(A1:G3; 1); A1:G3; 0)

    Diese Formel gibt dir die Position des größten Wertes in der Matrix zurück.

  3. Formel zur Bestimmung der Spalte: Um die Spalte zu finden, in der der größte Wert ist, kannst du die folgende Formel verwenden:

    =VERGLEICH(KGRÖSSTE(A1:G3; 1); INDEX(A1:G3; VERGLEICH(KGRÖSSTE(A1:G3; 1); A1:G3; 0); 0); 0)
  4. Mehrfache Werte: Wenn der größte Wert mehrmals vorkommt, kann es erforderlich sein, die Formeln anzupassen. Eine Möglichkeit ist die Verwendung von AGGREGAT, um alle Positionen zu erfassen.


Häufige Fehler und Lösungen

  • Problem mit doppelten Werten: Wenn KGRÖSSTE in einer Matrix doppelte Werte findet, kann dies zu unerwarteten Ergebnissen führen. Verwende die AGGREGAT-Funktion, um dies zu umgehen. Beispiel:

    =AGGREGAT(14; 6; A1:G3/(A1:G3=KGRÖSSTE(A1:G3; 1)); ZEILE(A1))
  • Falsche Rückgabe: Wenn die Formeln nicht die erwarteten Werte zurückgeben, überprüfe, ob der Datenbereich korrekt definiert ist und keine leeren Zellen vorhanden sind.


Alternative Methoden

  • Arrayformeln: Du kannst auch Arrayformeln verwenden, um die Zeile und Spalte des größten Wertes zu finden. Zum Beispiel:

    {=KKLEINSTE(WENN(A1:G3=KGRÖSSTE(A1:G3;1); ZEILE(A1:G3)); 1)}
  • VBA: Für komplexere Anforderungen kann auch VBA (Visual Basic for Applications) verwendet werden, um diese Berechnungen zu automatisieren.


Praktische Beispiele

Nehmen wir an, du hast folgende Matrix:

A B C D E F G
1 10 20 30 40 50 60
2 5 3 1 6 8 10
3 1 20 3 25 7 8

Um die Zeile und Spalte des höchsten Wertes (60) zu finden, verwendest du die oben genannten Formeln. Der größte Wert liegt in Zeile 1 und Spalte 7.


Tipps für Profis

  • Verwendung von benannten Bereichen: Um die Lesbarkeit deiner Formeln zu verbessern, kannst du benannte Bereiche verwenden.
  • Dynamische Bereiche: Nutze die Funktion BEREICH.VERSCHIEBEN, um dynamische Bereiche zu erstellen, die sich automatisch anpassen, wenn du Daten hinzufügst oder entfernst.

FAQ: Häufige Fragen

1. Wie kann ich die Zeile und Spalte des zweitgrößten Wertes finden?
Du kannst einfach die KGRÖSSTE-Funktion anpassen, indem du die Zahl 1 durch 2 ersetzt.

2. Funktioniert dies in allen Excel-Versionen?
Die beschriebenen Funktionen sollten in den meisten modernen Excel-Versionen wie Excel 2010 und später funktionieren. Einige Funktionen wie AGGREGAT sind möglicherweise nicht in älteren Versionen verfügbar.

3. Was kann ich tun, wenn ich mehr als zwei gleiche Maximalwerte habe?
In diesem Fall kannst du die AGGREGAT-Funktion verwenden, um alle Maximalwerte und deren Positionen in der Matrix zu ermitteln.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige