Clever-Excel-Forum

Normale Version: anzahl mehrerer Kriterien aus einer matrix
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
Hallo Lupo1,

es fehlt noch der Hinweis auf die Arrayformel und die besondere Art ihrer Eingabe
Steht da.
so jetzt hab ich alles 5 mal gelesen.

habe die datenüberprüfung reingeschmissen.

die falschen angepasst

und läuft immer noch nicht. ich bekomme immer noch 5 mal eine 0 als ergebniss.

ich verstehe auch immer noch nich warum die formel bei "zeile(A1)" anfängt da dort der text "lfd.nr." drin steht

da schau her:


[attachment=10283]

was für ne arrayformel?
Hinter meiner Formel steht Nr. 5. Warum steht das da? Kann man da vielleicht mal raufklicken?

ZEILE(A1) ist 1! Du meinst: A1

Und B und H sind beidseitig mehrfach falsch! Du musst da echt aufpassen, sonst bekommst Du Deine 118 Leute nicht zusammen mit meinen 5 Formeln.

GIB NIE WIEDER IN DEINEM LEBEN ETWAS PER HAND IN EINE ZELLE EIN.
(17.03.2017, 21:18)sten85 schrieb: [ -> ]was für ne arrayformel?

Na endlich hast Du meinen Wink mit dem Zaun bemerkt.

Geh mal auf Beitrag #4 hinter der lupos Formel steht Nr.5 und das ist ein anklickbarer Link. Habe ich auch nach Lupos Hinweis bemerkt.
Gut OK ich habe es verstanden.

bez. auch nicht ich weis immer noch nicht was Jetzt eine Arrayformel ist. Aber es funktioniert auf diesem Wege. Ich komme auch auf 118.

besten Dank
Hallo sten 85,

vielleicht wäre es Dir nachfolgende Lösungsformel  etwas leichter gefallen:

In E2 =SUMMENPRODUKT(ZÄHLENWENN(B$2:B$199;H$2:H$99)*(I$2:I$99=ZEILE(A1)))

eingesetzt und diese nach unten kopiert.

Diese Formel bedarf keines spez. Formelabschlusses (der in der Anzeige dann zur {} führt). Sie "arbeitet" intern trotzdem ähnlich einer klassischen Matrixformel. Mehr dazu sieh z.B. mal hier: http://www.online-excel.de/excel/singsel.php?f=26 und ff


Der Matrixformelansatz den lupo1 gewählt hat, ließe sich noch etwas verkürzen zu:

{=SUMME((MTRANS($B$2:$B$199)=$H$2:$H$99)*(ZEILE(A1)=$I$2:$I$99))}

Übrigens habe ich den hier angekommen Formeln hab ich die jeweils zwei auszuwertenden Bereiche etwas größer definiert als für Dein Beispiel notwendig. Das kann man tun, wenn man mit weiteren Angaben rechnet, man sollte dies aber aber auf das max notwendige/sinnvolle begrenzen, weil sowohl klassische Matrixformeln wie auch die von mir als Matrixfunktion(alität)sformel bezeichnete 1. Formel ressourcenhungrig sind. Matrixfunktion(alität)sformeln allerdings meist ein Tick weniger als klassische Matrixformeln.
Moin,

es geht (natürlich) auch mit meinem "Lieblings-Spielzeug" :05:  PQ:

Code:
let
    Quelle = Excel.CurrentWorkbook(){[Name="Tabelle1"]}[Content],
    #"Geänderter Typ" = Table.TransformColumnTypes(Quelle,{{"DG", type text}, {"DGGruppe", Int64.Type}})
in
    #"Geänderter Typ"

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

let
    Quelle = Excel.CurrentWorkbook(){[Name="Tabelle2"]}[Content],
    #"Geänderter Typ" = Table.TransformColumnTypes(Quelle,{{"Lfd. Nr", Int64.Type}, {"Dgrad", type text}})
in
    #"Geänderter Typ"

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

let
   Quelle = Excel.CurrentWorkbook(){[Name="Tabelle1"]}[Content],
   #"Geänderter Typ" = Table.TransformColumnTypes(Quelle,{{"DG", type text}, {"DGGruppe", Int64.Type}}),
   #"Zusammenführte Abfragen" = Table.NestedJoin(#"Geänderter Typ",{"DG"},qry_DGrad,{"Dgrad"},"NewColumn",JoinKind.RightOuter),
   #"Erweiterte NewColumn" = Table.ExpandTableColumn(#"Zusammenführte Abfragen", "NewColumn", {"Dgrad"}, {"Dgrad"}),
   #"Gruppierte Zeilen" = Table.Group(#"Erweiterte NewColumn", {"DGGruppe"}, {{"Anzahl", each Table.RowCount(_), type number}}),
   #"Sortierte Zeilen" = Table.Sort(#"Gruppierte Zeilen",{{"DGGruppe", Order.Ascending}})
in
   #"Sortierte Zeilen"

(ausnahmsweise nur der erzeugte Code, auf Wunsch stelle ich auch die Datei ein.)
Hallo Günther,

sicherlich kann man die Aufgabe auch mit PQ (oder wie bereits im thread angesprochen mit einer Kombination aus PIVOT- und Hilfsformel oder auch mit VBA) lösen.

Doch ich meine, nein behaupte, dass im spez. Fall die einfachste und schnellste Lösungsmethode (sowohl bzgl. Erstellung als auch Auswertung) eine der bereits vorgestellten Formellösungen ist, die noch dazu auch in älteren Excelversionen (vor Excel 2010) exakt genauso zur Anwendung gelangen kann.
Moin Werner,

klare Antwort: "Jein".  Blush
Ja, die Formeln erfüllen ihren Zweck.
Ja, es gibt viele Wege, die zum Ziel führen.
Ja, sie ist schnell eingetippt.
Ja zu den älteren Versionen
Nein und teilweise Ja zu "dass im spez. Fall..." Denn: Ich weiß nicht, welchen Anspruch der TE an sich selber hat. Will er einfach nur eine Lösung? Dann JA. Will er möglichst einfach das Vorgehen auf immer wieder veränderte Basisdaten anwenden? Dann sehe ich auch PQ oder VBA als erste Lösung. Will er lernen, sich fortbilden? Dann ein klares NEIN. Ich weiß von einigen meiner Seminar-Teilnehmer, dass zu Zeiten, als es noch die Wehrpflicht gab genügend Zeit war, um zu experimentieren. Dann wird er die Formeln analysieren und auch die anderen Vorgehensweisen durcharbeiten und dadurch um einiges stärker werden in Excel ...
Nein (allgemein): Ich halte es für vorteilhaft, wenn der Fragesteller (und die Leser) aus dem Pool der Lösungsangebote das nutzt, was ihm/ihr am meisten "liegt".

Ich habe ganz bewusst einige Zeig gewartet, ehe ich mich hier offiziell eingeklinkt habe. Und ich habe auch heute noch überlegt, ob ich es bei dieser Lösung belassen soll, denn "sauber" oder wunschgemäß ist es ja auch nicht. Da fehlt dann noch eine Liste oder ähnlich für die "Übersetzung" der Gruppen-Zahlen zu den Gruppen-Namen (sorry, wahrscheinlich nicht ganz korrekt aber ich habe so wie so keine Ahnung, wie die Dienstgrade voll ausgeschrieben heißen und schon gar nicht, was wozu gehört.) Also, um aus der 5 so etwas wie "Msch" zu machen.

Schönes Wochenende!
Seiten: 1 2 3