Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

MatrixFormeln
#1
Hallo,
ich habe eine kleine Meinungsverschiedenheit mit Excel und hoffe ihr könnt mir helfen den Streit zu schlichten
Ich habe eine Tabelle mit 2 Spalten. In der ersten Spalte steht eine Zeit (Arbeitszeit) in der zweiten steht ein Mitarbeiter (Name)
Nun möchte ich aufgrund der Tabelle wissen welcher Mitarbeiter wie viel Stunden gearbeitet hat. 
Ich versuche es zu visualisieren:

Tabelle:
Zeit     | Mitarbeiter 
5:55    | MA1
4:25    | MA2
8:45    | MA3
4:12    | MA2
13:18  | MA2
2:55    | MA1

Nun möchte ich folgende Ausgabe haben:
MA1     | 8:50
MA2     | 21:55
MA3     | 8:45

Ich versuche im folgenden meinen Gedankengang zu erklären. Ich habe das Beispiel aber auch mal in einem Dummy nachgebaut und angehangen (wegen Datenschutz und so.)
Ich dachte dabei dann direkt an die Matrix-Funktionen. Dann bin ich der Reihe nach angefangen:

Erstmal eine WENN Klausel um nur die Werte des jeweiligen Mitarbeiters zu erhalten
WENN($D$9:$D$14=G8;ZEILE($D$9:$D$14);20)
wobei "$D$9:$D$14" der interessante Tabellenbereich ist und G8 den Mitarbeiternamen wiederspiegelt. Die 20 ist eine Leere Zelle außerhalb der Tabelle um eine 0 zu bekommen für das spätere Summieren.

Darum dann ein INDIREKT um an den Zellenwert (die Zeit) zu kommen der in der Tabelle vorhanden ist.
INDIREKT("C"&WENN($D$9:$D$14=G8;ZEILE($D$9:$D$14);20))

Zum Schluss das ganze noch mit einer Summe versehen weil ich will ja die Gesamtarbeitszeit haben. 
SUMME(INDIREKT("C"&WENN($D$9:$D$14=G8;ZEILE($D$9:$D$14);20)))

Das ganze natürlich mit STRG+SHIFT+ENTER gespeichert.

Leider klappt es nicht. Ich habe dann mit F9 analysiert und Ende vom Lied ist:
Markiere ich die ganze Formel und mache F9 (egal bei welchem Mitarbeiter) bekomme ich die richtige Zeit raus... 
Allerdings in der Zelle steht 0 mit einer Ausnahme:
MA1 in der ersten Zeile! 
Die Zeit aus der ersten Zeile der Tabelle wird immer genutzt! Wechsle ich die erste Zeile in MA2 so steht bei MA2 die 0,24* für die 5:55 Std. 

Woran kann es liegen?

Wie gesagt, damit ihr es besser nachvollziehen könnt ist im Anhang ein Dummy.

Ich danke vielmals für eure Hilfe. Wenn ihr den Fehler findet, wäre es für mich auch wichtig zu wissen was ich falsch gemacht habe.
Möchte ja schließlich nicht dumm sterben  Blush


Angehängte Dateien
.xlsx   Test.xlsx (Größe: 9,26 KB / Downloads: 3)
Antworten Top
#2
Hallo r...,

nimm die Formel SUMMEWENNS:

=SUMMEWENNS($C$9:$C$14;$D$9:$D$14;G8)


Angehängte Dateien
.xlsx   Test-17.xlsx (Größe: 9,24 KB / Downloads: 2)
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Antworten Top
#3
Hi,

es reicht ein einfaches SUMMEWENN():

Arbeitsblatt mit dem Namen 'Tabelle1'
CDEF
7TabelleMitarbeiterzeiten
8ZeitMitarbeiterMA108:50
905:55MA1MA221:55
1004:25MA2MA308:45
1108:45MA300:00
1204:12MA200:00
1313:18MA200:00
1402:55MA100:00

ZelleFormel
F8=SUMMEWENN($D$9:$D$14;E8;$C$9:$C$14)
Verwendete Systemkomponenten: [Windows (32-bit) NT 10.00] MS Excel 2016
Diese Tabelle wurde mit Tab2Html (v2.6.0) erstellt. ©Gerd alias Bamberg
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antworten Top
#4
Hallo,
Das ist doch eine ideale Aufgabe für eine Pivottabelle.
Da werden auch neue Mitarbeiter automatisch mit erfasst.
Summewenns und Summenprodukte sind weniger geeignet, reines VBA ist langsamer, und IMHO sollte man Indirekt nie und Matrixformeln nur wenn unbedingt nötig (bei Abhängigkeit von mehreren Zellen, aber nicht für dümmliche Ein-Zellen-Formeltricks) verwenden.
Viele Grüße,
Bernd P
Antworten Top
#5
Super ich danke euch!

Ich dachte, die Matrix Formel wäre die Idee aber wohl zu kompliziert gedacht.

Vielen Dank und eine schöne Zeit noch
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste