möglichkeit mit Matrixformel

Bild

Betrifft: möglichkeit mit Matrixformel von: chris b
Geschrieben am: 27.02.2005 10:42:49

Hallo Excel Spezialisten,
habe folgende frage an euch und würde mich freuen wenn ihr mir wieder einmal helfen könntet.
Habe eine Tabelle wie unten im Beispiel aufgebaut.
Habe folgende Formel in Zelle B11 "=INDEX(B:B;VERGLEICH(C11;C:C;0))"
Ist es möglich dafür eine Array Formel zu bauen ?
Vielen Dank für eure Hilfe
Besten grüße und schönen Sonntag, Chris





      
A     B     C     
2     Datum     Zahl     
3     01.01.2005     10     
4     02.01.2005     20     
5     03.01.2005     35     
6     04.01.2005     1     
7     05.01.2005     22     
8     06.01.2005     34     
9                 
10             
11     03.01.2005     35     
 

     Code eingefügt mit Syntaxhighlighter 3.0

Bild


Betrifft: Und wozu? von: Boris
Geschrieben am: 27.02.2005 10:49:01

Hi Chris,

...möchtest du es unnötig verkomplizieren? Deine Formel ist doch völlig ok...

Grüße Boris


Bild


Betrifft: AW: dazu von: chris b
Geschrieben am: 27.02.2005 10:50:42

Ich benötige weder die noch die. Ich bin nur gerade dabei zu lernen mit Matrix formeln umzugehen.
Deshalb würde ich mich über hilfe mehr freuen !


Bild


Betrifft: AW: dazu von: Boris
Geschrieben am: 27.02.2005 10:57:25

Hi Chris,

na ja, dann z.B. so:
{=INDEX(B1:B10;MAX((C1:C10=C11)*ZEILE(1:10)))}

Grüße Boris


Bild


Betrifft: AW: dazu von: chris b
Geschrieben am: 27.02.2005 10:59:00

Danke klappt wunderbar.
Versteh zwar noch nicht ganz die Logik dieser Formeln aber komm schon noch dahinter :)


Bild


Betrifft: Arrayformeln nachvollziehen von: Boris
Geschrieben am: 27.02.2005 11:02:46

Hi Chris,

in diesem Zusammenhang gibt es die wunderbare Möglichkeit, einzelne Formelteile in der Bearbeitungsleiste zu markieren und dann mit F9 auszuwerten.
Das hilft ungemein für das Verständnis.
In diesem Beispiel:
B1:B10
(C1:C10=C11)
ZEILE(1:10)

Also: Wie angegeben einzeln markieren und dann F9. Probier mal ein bisschen rum...
Viel Spaß!

Grüße Boris


Bild


Betrifft: AW: Arrayformeln nachvollziehen von: chris b
Geschrieben am: 27.02.2005 11:05:34

Danke Boris.
Habe damit schon etwas rumprobiert.
Bekomme dann immer wahr und falsch und so aber etwas fehlt noch zum verständniss genauso wie bei der formelart "summenprodukt" aber wird schon noch danke dir !!!


Bild


Betrifft: AW: Arrayformeln nachvollziehen von: chris b
Geschrieben am: 27.02.2005 11:08:58

Habe die formel jetzt mal aufgesplittet hier gepostet.

=INDEX({"B";"Datum";38353;38354;38355;38356;38357;38358;" ";0};MAX({FALSCH;FALSCH;FALSCH;FALSCH;WAHR;FALSCH;FALSCH;FALSCH;FALSCH;FALSCH}*{1;2;3;4;5;6;7;8;9;10}))


a riesen ding :) Aber erkennen kann ich da noch keinen zusammenhand wie ich auf das ergebniss komme.
Aber heute ist Sonntag deshalb vieleicht :) danke trotzdem Boris


Bild


Betrifft: Du bist doch schon kurz vor dem Ziel... von: Boris
Geschrieben am: 27.02.2005 14:27:09

Hi Chris,

=INDEX({"B";"Datum";38353;38354;38355;38356;38357;38358;" ";0};MAX({FALSCH;FALSCH;FALSCH;FALSCH;WAHR;FALSCH;FALSCH;FALSCH;FALSCH;FALSCH}*{1;2;3;4;5;6;7;8;9;10}))

Jetzt musst du nur noch die beiden Matritzen multiplizieren:

{FALSCH;FALSCH;FALSCH;FALSCH;WAHR;FALSCH;FALSCH;FALSCH;FALSCH;FALSCH}*{1;2;3;4;5;6;7;8;9;10}

Und da FALSCH = Null und WAHR = 1 entspricht, ergibt das (markiert und mit F9 berechnet):

{0;0;0;0;5;0;0;0;0;0}

Und weil diese Matrix mit der Funktion MAX umrandet ist, wird daraus das Maximum ermittelt:
=MAX({0;0;0;0;5;0;0;0;0;0})

Na ja - und das ist eben 5.
Und diese Zahl (5) wird an die Funktion INDEX übergeben:

INDEX({"B";"Datum";38353;38354;38355;38356;38357;38358;" ";0};5)

Also der 5. Wert aus der Matrix - das ist hier 38355 - und als Datum formatiert der 03.01.2005.

Alles klar?

Grüße Boris


Bild


Betrifft: AW: Du bist doch schon kurz vor dem Ziel... von: chris b
Geschrieben am: 27.02.2005 17:58:46

Jo klar Boris.
hab ich so ziemlich verstanden.Super Erklärung !! Vielen dank noch einmal und noch schonen Sonntag :)
Grüße Chris


Bild


Betrifft: AW: Du bist doch schon kurz vor dem Ziel... von: chris b
Geschrieben am: 27.02.2005 18:11:47

Hallo Boris, eine frage noch
Wäre super wnen du mir noch mal helfen könntest.
Und zwar habe hier noch eine Matrix Formel.
Diese auch das macht was sie machen soll.
Aber wie und was wird hier summiert ??Odre multipliziert ?

=SUMME(WENN(C4:C9="";0;1))

Danke Boris


Bild


Betrifft: AW: Du bist doch schon kurz vor dem Ziel... von: Tim
Geschrieben am: 27.02.2005 20:40:25

Es wird summiert, wenn der Zellwert im Bereich = 1 ist.

Tim


Bild


Betrifft: Da bist du aber schief gewickelt...oT von: Boris
Geschrieben am: 27.02.2005 20:49:24




Bild


Betrifft: AW: Du bist doch schon kurz vor dem Ziel... von: Boris
Geschrieben am: 27.02.2005 20:47:40

Hi Chris,

die Formel selbst könnte man ja einfach mit ANZAHL2 nachbilden - aber des Lernens wegen:

 
 CD
413
5 =SUMME(WENN({FALSCH;WAHR;FALSCH;WAHR;WAHR;FALSCH};0;1))
67=SUMME({1;0;1;0;0;1})
7 =3
8  
95 
Formeln der Tabelle
D4 : {=SUMME(WENN(C4:C9="";0;1))}

Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  


C4:C9 wird auf "" (nix) überprüft. Stimmt das, dann Null, ansonsten 1. Und die Summe der Einser ergibt dann die Anzahl der gefüllten Zellen. Also: Es wird gezählt - und das Summieren von Einsern ist nix anderes als Zählen.

Grüße Boris


Bild


Betrifft: AW: Du bist doch schon kurz vor dem Ziel... von: chris b
Geschrieben am: 27.02.2005 21:04:55

Danke Boris !!!!


 Bild

Beiträge aus den Excel-Beispielen zum Thema "möglichkeit mit Matrixformel"