Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1732to1736
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Summewenns

Summewenns
20.01.2020 13:01:57
Andreas
Hallo,
meine Personalberechnung besteht aus zwei Worksheets (Personal, Berechnung).
Das Worksheet Personal enthält u.a. die Spalten: Name, Vorname, Arbeitsvertrag_Stunden (Spalte E), Kalenderjahr (Spalte C), Arbeitsort (Spalte S).
Im Worksheet "Berechnung" nahm ich die Auswertungen für das Arbeitsvolumen mit Summewenns vor.
=SUMMEWENNS(Personal!$E$2:$E$4041;Personal!$C$2:$C$4041;$A5;Personal!$S$2:$S$4041;$C$2)
Das klappte gut.
Nun erhalte ich ständig wechselnde Datensätze und damit unterschiedliche Bezugsgrößen für die Zeilenanzahl (4044, 4912, etc) im Worksheet Personal.
Meine Lösung sollte eine dynamische Anpassung der obigen Formel sein. Dies wollte ich über Namen und Bereich/Verschieben realisieren.
Stunden:
=Personal!$E$2:BEREICH.VERSCHIEBEN(Personal!$E$2;VERGLEICH("";Personal!$E:$E;-1)-2;0)
Jahr:
=Personal!$C$2:BEREICH.VERSCHIEBEN(Personal!$C$2;VERGLEICH("";Personal!$C:$C;-1)-2;0)
Ort:
=Personal!$T$2:BEREICH.VERSCHIEBEN(Personal!$T$2;VERGLEICH("";Personal!$T:$T;-1)-2;0)
Verwende ich diesen Ansatz in der Formel:
=Summewenns(Stunden;Jahr;$A5;Ort;$C$2) erhalte ich eine Fehlermeldung.
Was kann die Ursache sein?
Ich würde mich über eure Hilfe freuen!
Andy

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ... kann über ges. Zeilenbereich auswerten ...
20.01.2020 13:06:06
neopa
Hallo Andy,
.. also z.B. so:
=SUMMEWENNS(Personal!$E:$E;Personal!$C:$C;$A5;Personal!$S:$S;$C$2)
Gruß Werner
.. , - ...
AW: ... kann über ges. Zeilenbereich auswerten ...
20.01.2020 19:08:08
Andy
Hallo Werner,
hat sofort geklappt.
Herzlichen Dank
Andy
AW: Summewenns
20.01.2020 13:25:54
Daniel
HI
hast du schon mal getestet, ob Vergleich("";..) auch wirklich die richtige Zeilennummer liefert?
wichtig ist, dass die Zellbereiche immer gleich groß sind. Daher solltest du die Anzahl der Zeilen für jeden Namen in der selben Spalte ermitteln.
andererseits, solange du nur mit Summe- und ZählenWenn(s) arbeitest, brauchst du das nicht, weil diese Funktionen problemlos mit ganzen Spalten umgehen können (Personal!$E:$E) und die Berechung nur bis zum tatsächlichen Ende der Tabelle durchführen.
nur wenn du Matrixformeln bzw SummenProdukt zur Auswertung verwendest, müsstest du die Zellbereiche in den Formeln an die tatsächliche Tabellengröße anpassen.
eine andere Variante wäre, dass du die Tabelle als Tabelle (Einfügen - Tabellen - Tabelle) formatierst. dann bekommst du die einzelnen Spalten automatisch als Namen bereitgestellt und die Anpassung an wechselnde Größen erfolgt automatisch.
wenn du bei eigenen Namen bleiben willst, folgende Tipps:
1. vermeide Bereich.Verschieben und verwende INDEX
Bereich.Verschieben ist volatil, das bedeutet, dass Formeln, die es enthalten von Excel immer, bei jeder Änderung neu berechnet werden, auch wenn das u.U. nicht notwendig wär). Wenn du das dann noch mit langsamen Funktionen kombinierst (SummeWenn und ZählenWenn sind solche), leidet die Performance deiner Datei
2. die EndZeilennummer ist ja für alle gleich. Berechne sie nicht für jeden Namen neu, sondern ggf in einem eigenen Namen und setze diesen dann in die Namensdefinition ein. die andere alternative ist, dass du zunächst einen Namen für die gesamte Tabelle anlegst:
Personal_Gesamt = "=Personal!$A$1:$Z$4035"
KalenderJahr = "=Index(Personal_Gesamt;0;3)
Stunden = "Index(Personal_Gesamt;0;5)

auch wenn du nichts berechnest, müsstest du dann die Tabellengröße nur an einer stelle ändern und die anderen Namen würden sich automatisch anpassen, weil sie abgeleitet sind.
Gruß Daniel
Anzeige
AW: Summewenns
20.01.2020 19:13:07
Andy
Hallo Daniel,
danke für die schnelle Antwort. Ich werde deine Lösungsansätze durchprobieren.
Nochmals Danke und viele Grüße
Andy

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige