Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1500to1504
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

Personenzeit berechnen

Personenzeit berechnen
01.07.2016 08:42:46
Bernd
Hallo zusammen,
irgendwie versuch ich vergebens ne brauchbare Lösung zu finden, um die Zeitdauer zu errechnen, in der für eine Person Rückmeldungen vorhanden sind, bzw. letztlich die Zeit in der eben keine Rückmeldungen vorhanden sind.
Anbei ein einfaches Beispiel:
https://www.herber.de/bbs/user/106666.xlsx
Grundlage ist eine Personen mit Mehrmaschinenbedienung, die Zeitspannen ergeben sich aus Rückmeldungen auf teils unterschiedliche Maschinen, welche sich teilweise überschreiten können (gelb markiert). Dagegen steht die normale Tages-Arbeitszeit (grün markiert). Errechnet soll eben der Zeitraum werden mit bzw. letztlich ohne Rückmeldungen (blau).
Hat da wer nen Ansatz für mich wie man das brauchbar berechnen kann?
Vorab vielen Dank
Gruß Bernd

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Personenzeit berechnen
01.07.2016 11:36:59
Michael
Hi Bernd,
zunächst würde ich vorschlagen, daß Du die Summe in Zeile 3 unterbringst, dann ist die Eingabe "nach unten offen", so daß man bei einer etwaigen Formellösung variabel ist bzw. letztere weniger aufwendig ist.
Du wirst ja nicht immer nur EXAKT vier Zeitpaare pro Maschine haben.
Ansonsten würde ich das lieber mit VBA als mit Formeln machen; falls das erwünscht ist, sag Bescheid, ansonsten lasse ich den Thread auf offen.
Schöne Grüße,
Michael

AW: Personenzeit berechnen
01.07.2016 13:50:13
Bernd
Hallo Michael, und ihr alle anderen,
vielen dank erstmal.
ja da hast natürlich recht, die Summe ist erstmal zweitrangig, hab ich eigentlich erstmal auch gar nicht und wo die dann steht ist völlig egal.
War eigentlich nur dazu gedacht, dass man mein einfaches Beispiel auch versteht.
Und natürlich sinds auch mehr Rückmeldungen pro Tag
Ob jetzt das mittels VBA oder Excel errechnet wird ist mir eigentlich auch egal, wenns funktioniert. In Excel kann ich halt evtl. noch was dann anpassen, bei VBA muss ich schaun dass ich verstehe was abläuft, viel ändern ist da bei mir nicht drin befürchte ich.
Aber wenn das doch wer anschaun möchte hier noch einmal ein Beispiel mit reellen Daten.
https://www.herber.de/bbs/user/106682.xlsx
Die verschiedenen Farben entsprechen den unterschiedlichen Maschinen.
Errechnet soll eben die Zeitdauer mit Rückmeldungen werden ohne irgendwelche Überschneidungen.
Zeiten vor und nach Arbeitsbeginn, sollen wenn vorhanden nicht berücksichtigt werden.
Ebenso die Pausen natürlich nicht.
So und das wars dann schon, und wenns nurn Denkanstoß ist, habe im Moment keine Ahnung wie man diese Zeit errechnen kann ohne irgendwelche Kopfstände zu machen.
Vielen Dank vorab. Gruß Bernd

Anzeige
VBA anbei - Formeln wer mag...
01.07.2016 16:02:00
Michael
Hi Bernd,
ich habe für das Makro Deine Tabelle etwas geändert, und zwar:
a) Alles eine Spalte nach rechts und in Spalte A eine lfd. Nr. ab Zeile 2: 1,2,3 usw.
Warum? Weil das alles nicht geht, ohne die Zeiten zu sortieren, und anhand der Nummerierung mache ich die Sortierung anschließend wieder rückgängig.
b) Die Arbeitszeiten/Pausen habe ich in einen Bereich (J12:K14) zusammengedampft, der die "valide" Zeit enthält, also Beginn-1. Pause, Pausenende bis 2.Pause und 2. Pausenende bis Feierabend.
Das Makro sortiert zunächst die Tabelle nach Beginn und Ende, liest alles in ein "Array" (a) ein, die validen Zeiten auch (v) und geht das alles in zwei Schleifen durch - ist nicht optimiert, aber es ist zu heiß, um da weiter herumzufpriemeln.
Anschließend wird A2:F(unterste Zeile) wieder zurücksortiert.
Die Ausgabe erfolgt in K7, außerdem in den untersten 3 Makrozeilen unterhalb der Originaldaten: letzteres kann man löschen oder auskommentieren, aber zum Nachvollziehen der Berechnungen ist es erst mal ganz nett, wenn Du Dir das ausgeben läßt.
Jetzt, wo ich es in VBA "durchschaut" habe, könnte ich es auch verformeln, aber mit der Sortierung sollte man Hilfsspalten verwenden, sonst werden das "Monsterformeln" - nun ja, anderen Helfern geht das schneller von der Hand als mir.
Die Datei: https://www.herber.de/bbs/user/106688.xlsm
Schöne Grüße,
Michael

Anzeige
AW: VBA anbei - Formeln wer mag...
05.07.2016 12:12:57
Bernd
Hallo Michael, auch Dir natürlich vielen Dank nochmals, perfekte VBA-Lösung. Ich bin noch dran den Code zu verstehen, vielen Dank. Gruß Bernd

AW: Personenzeit berechnen
04.07.2016 10:28:19
Bernd
Hallo,
sry für die späte Antwort,hatte meine Logindaten zuhause nicht...
vielen Dank Euch erstmal,werde mir das heut anschaun, im Moment gerade wenig Zeit.
Echt super, melde mich.
Gruß Bernd

AW: Personenzeit berechnen VBA
01.07.2016 16:57:32
Fennek
Hallo,
mein Vorschlag bezieht sich auf den Anfangspost ohne die anderen Vorschläge zu berücksichtigen. Es ist eher ein "proof-of-concept", einige "Schönheiten" fehlen noch.
Ansatz: alle Datei in eine Liste zu kopieren und nach der Startzeit zu sortieren. Danach kann ein eher übersichtlicher Makro die Belegungszeiten bestimmen.
https://www.herber.de/bbs/user/106690.xlsm
mfg

Anzeige
AW: Personenzeit berechnen VBA
05.07.2016 12:02:38
Bernd
Hallo Fennek, vielen Dank... echt super was hier für Vorschläge kommen :)
Als Grundgerüst sicher mal gut, ich denke aber, soweit ich das beurteilen kann..., fehlt im VBA da ne Aggregatfunktion, da bei sortierter Liste nach Start-Uhrzeit nicht immer die Ende-Uhrzeit der Vorstempelung die Max-Uhrzeit bis dahin sein muss.
bspw wenn man solche Rückmeldungen hat:
Masch Start Ende
32303 07:00:42 08:40:03
32302 07:42:11 13:15:56
32303 08:40:09 10:25:53
32303 10:26:00 11:45:28
32303 12:15:29 14:00:52
32301 12:23:44 15:45:11
Aber trotzdem natürlich vielen Dank für deinen Denkanstoss / "proof-of-concept"
Gruß Bernd

Anzeige
Mehrmaschinenbedienung
02.07.2016 20:05:05
Peter
Hallo Bernd,
ich frage mich, ob Du wohl mit den bisherigen Posts zufrieden bist. Was mir auffällt, es werden keine Nachtschichten berücksichtigt. Wenn man nur mit "Zeit" arbeitet, und nicht zusätzlich das Datum einbezieht, kann man erheblich ins Schleudern geraten. Auch Dein Trick mit der Differenzberechnung im Falle der Datumsüberschreitung ist nicht hilfreich. Die nach Deinen Vorgaben durchzuführenden Berechnungen erfordern zwingend die Beifügung des Tagesdatums. Dementsprechend müssen in meinem Entwurf die Tagesdaten miteingegeben werden: "TT.MM.JJJJ" "hh:mm". Die Spalte "Datum" wird daraus dann automatisch erstellt. Ich gehe davon aus, dass die Maschinenlaufzeiten in einer Vordatei zur Verfügung stehen. Darin müssten dann auch die Arbeitnehmer zugeordnet sein. Sollte in diesen Vordateien das Datum nicht zugeordnet sein, muss man in einer gesonderten Bearbeitung der Vordatei dies nachholen. Die Laufzeiten könnten dann direkt in die Spalten "Start" und "Ende" in meinem Entwurf eingegeben werden. Die Maschinenlaufzeiten werden mit dem Echt-Datum ausgegeben. Wenn der Arbeitnehmer über die Datumsgrenze (Nachtschicht) arbeitet, zählen seine Stunden nach 0 Uhr noch zur Schicht des Vortages. Will man also die Maschinenzeiten mit den Arbeitszeiten vergleichen, dann muss das Datum für die Nachtstunden auf den Vortag angepasst werden. Eingestellt in meinem Entwurf habe ich 6,5 Stunden. In der Zeit von 0.00 Uhr bis 6.30 Uhr wird also das Maschinendatum um 1 Tag zurückgesetzt.
Gewisse Einstellungen befinden sich verdeckt in den Zeilen 1 und 2 der Tabelle2. Ein großer Teil der Berechnungen mit den Zwischenergebnissen befinden sich in der Tabelle3. Die Tabelle läßt sich ganz einfach aufblenden - aber Vorsicht! - sie enthält hoch komplexe Formeln, die nicht versehentlich beschädigt werden sollten.
Gleich ins Auge fällt, dass hier gleich 4 Maschinen zur Verfügung stehen. Ob dies für Dich in Frage kommt, sei dahingestellt. Das Programm funktioniert natürlich auch, wenn nur 2 oder 3 Maschinen angesprochen werden und die anderen Spalten frei bleiben.
Mein Programm ist außerdem für eine Woche ausgelegt. In dem eingetragenen Beispiel hat der Arbeitnehmer zwischendurch einen Tag Urlaub genommen; der 22. 6. 2016 fehlt also. Man kann selbstverständlich auch nur einen einzelnen Tag eintragen und dann das Programm starten. Bei den Arbeitszeiten des Mitarbeiters ist Anfang und Ende und ein Pausenabschlag berücksichtigt. Der Pausenabschlag kann geändert oder auf 0 gesetzt werden.
Nun genug der Vorrede, hier meine Datei
https://www.herber.de/bbs/user/106702.xlsm
Bitte mal testen. Bei Fragen stehe ich gerne zur Verfügung. Feedback wäre schön.
Mit freundlichem Gruß
Peter Kloßek, Goldbach Ufr.

Anzeige
AW: Personenzeit berechnen
04.07.2016 10:44:23
Bernd
Hi, erstmal vielen Dank Euch, hatte meine Logindaten übers Wochenende nicht parat.
Ich schau mir das heute noch an, gerade wenig Zeit, melde mich.
Echt super... Gruß Bernd

Mehrmaschinenbedienung
04.07.2016 23:20:34
Peter
Hallo Bernd,
ich habe mir heute nochmals das Problem zu Gemüte geführt und bin zu dem Schluss gelangt, dass meine komplizierten Formeln zwar im Test gut funktionieren, bei einem extremen Auseinanderfallen der Maschinenlaufzeiten könnten sie jedoch zu falschen Ergebnissen führen. Daher habe ich noch zwei weitere Makros entwickelt, die die wüsten Formeln ersetzen und sichere Resultate bringen. Außerdem habe ich noch eine weitere Nachtschicht eingegeben. Die Nachtschicht ist die Archillesferse bei diesem Projekt! Vor allen Dingen müssen die Zeiträume für die Arbeitnehmer- und die Maschinenleistung sich decken.
Hier nun mein zweiter Entwurf
https://www.herber.de/bbs/user/106754.xlsm
Damit Du auch eine Vorstellung von den Aktionen der Makroabläufe bekommst, habe ich in Tabelle4 einige Erläuterungen geschrieben, insbesondere, wie man die Makros einzeln ausführen kann und dabei die Entwicklung in der Tabelle 3 beobachten kann. Außerdem ist dort eine Beschreibung der neu erstellten Makros 11 und 12 enthalten. Da sich die zu berechnenden Bereiche andauernd ändern, ist es sinnvoll, diese durch Excel selbst errechnen zu lassen. Ich arbeite dabei mit Bereichen - oder eigentlich nur mit einem Bereich, der aber andauernd neu erstellt wird.
Ich empfehle, mal ganz ausgefallene Eintragungen zu testen (geringe und große Laufzeiten der Maschinen, die aus dem Rahmen fallen).
Für weitere Fragen stehe ich gerne zur Verfügung.
Mit freundlichem Gruß aus Goldbach, Ufr.
Peter Kloßek

Anzeige
AW: Mehrmaschinenbedienung
05.07.2016 12:10:46
Bernd
Hallo Peter,
auch speziell Dir natürlich erstmal vielen Dank für deine ja schon fast Komplettlösung :)
Das mit der Nachtschicht ist natürlich ein berechtigter Einwand,an sowas hatt ich bis dahin gar nicht gedacht.
Ich bin da noch dran, muss das erstmal durchspielen und verstehen.
Eine Rückfrage aber vielleicht gleich vorab, die Pause wird da genrell berücksichtigt und abgezogen?
Bie uns ist so, dass ja bspw. Vesperpause immer ist, der eine lässt aber die Stempelung durchlaufen, der andere eben nicht, abgezeogen wird die aber immer... genauso wie die Mittagspause eben auch.
Mal schaun, hoffe ich schaffs heut Abend. Du hörst... danke, Gruß Bernd

Anzeige
AW: Mehrmaschinenbedienung
05.07.2016 19:41:39
Peter
Hallo Bernd,
ich habe noch Deine Tabelle mit den Rückmeldungen gefunden und die Daten mal so umformatiert, dass sie in meine Datei eingefügt werden können. Was hier nur noch fehlt, ist die Zuordnung zum Personal, d. h., die Personalnummer. Wenn wir dies auch noch hätten, könnte man über eine Bearbeitung dieser Vordatei (natürlich auch per VBA) eine automatische Befüllung meines Entwurfs erreichen. Poste doch mal einen größeren Datenbereich (100-200 Zeilen), und teile mir mit, in welchem Datenformat die Daten zur Verfügung stehen (z. B. .csv, .txt), dann können wir weitersehen.
https://www.herber.de/bbs/user/106780.xlsx
Wünsche noch einen schönen Abend.
M.f.G. Peter Kloßek

Anzeige
AW: Mehrmaschinenbedienung
06.07.2016 09:36:55
Bernd
Sevus Peter,
vorab nochmals vielen Dank, echt gradios die Unterstützung hier :)
Ein paar reelle Daten bzw. Stempelungen hab ich mal hier angefügt, wobei die wichtigen Spalten gelb markiert sind, ist ja selbsterklärend. Die Blockmarkierung ist lediglich aus optischen Gründen vorhanden, ist halt jeweils ein Arbeitstag.
https://www.herber.de/bbs/user/106790.xlsx
Möglich ist bei diesem Mitarbeiter eine Bearbeitung von 3 Maschinen gleichzeitig, erkennt man an den unterschiedlichen Ist-Arbeitsplätzen.
Wobei sich die Anzahl der Stempelungen ja eh in Grenzen hält.
13.06 war Urlaub, für den Rest gilt im Ist eine Arbeitszeit von 07:00-15:45Uhr, abgezogen bzw. nicht berücksichtigt muss werden: Vesperpause 09:00-09:15Uhr + Mittagspause 11:45-12:15Uhr
Mach Dir aber bitte kein Stress... schöne Grüße Bernd

Anzeige
AW: Mehrmaschinenbedienung
06.07.2016 15:48:09
Peter
Hallo Bernd,
schönen Dank für die geposteten Tabellen. Es kommt darin nur 1 Mitarbeiter vor. Ich nehme mal an, dass die ganze Sache doch wohl nicht nur für e i n e n Mitarbeiter durchgeführt werden soll. Ich nehme also mal an, dass in der Ursprungsdatei weitere Namen enthalten sind. Und wird die Ursprungsdatei in der Breite der 2. Tabelle bereitgestellt? In welchem Format wird diese Datei bereitgestellt? Für eine sinnvolle Lösung benötige ich das ursprüngliche Format, nicht eine Umwandlung auf Excel - es sei denn, dass ursprünglich in Excel ausgegeben wird. Weiterhin lässt sich nur dann eine Lösung entwickeln, wenn Du eine Datei mit mehreren Namen (bzw. Personalnummern - die Namen kannst Du auch weglöschen, die Spalte aber stehenlassen! - bereitstellst. Gut wäre eine Liste mit 100 bis 200 Zeilen. Darüberhinaus wären noch weitere Fragen zu klären: Du schreibst, dass der gepostete Mitarbeiter an bis zu drei verschiedenen Arbeitsplätzen am Tag arbeitet. Sind dies immer nur - jeden Tag - dieselben drei?, oder können dies verschiedene, nicht nur die drei genannten, Arbeitsplätze sein - bezogen auf eine Woche? Wie sieht es mit den anderen Arbeitnehmern aus, für die sonst solche Auswertungen erstellt werden? Kommt man da in der Woche insgesamt gesehen mit 4 verschiedenen Arbeitsplätzen aus? Es könnte ja auch sein, dass der Arbeitnehmer X am Montag an den Arbeitsplätzen A, C und E arbeitet, am Dienstag aber an den Arbeitsplätzen B, D und F. Diese Frage bezieht sich natürlich auch auf die anderen Arbeitnehmer. In der 1. Tabelle hast Du das "Buchungsdatum" dargestellt; entspricht dieses Datum dem tatsächlichen Fertigungsdatum?
Die Lösung für Deine Praxis kann ich nur dann erarbeiten, wenn mir wirklichkeitskonforme Daten als Muster vorliegen. Und die Lösung kann auch nicht in 2 Tagen kommen - übrigens Dein Thread läuft morgen aus! Du müsstest also entweder einen neuen Thread eröffnen (bitte dann mit dem Betreff "Mehrmaschinenbearbeitung") oder Du wendest Dich direkt an meine E-Mail-Adresse: peklo66@online.de. Dann ist auch garantiert, dass Deine Daten nicht an Dritte weitergeleitet werden.
Ich habe zwar jetzt eine Vorstellung von den Problemen bekommen, es fehlen jedoch eben noch die o. g. Fakten. Bevor ich mich nun ins Zeug lege und an die Arbeit mache, warte ich noch auf Deine Antwort; mit meinen jetzigen Kenntnissen wäre u. U. meine Arbeit "für die Katz".
M.f.G. Peter Kloßek

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige