Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
868to872
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
868to872
868to872
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Macro fuer Kapazitaetsplanung - Extrem DRINGEND!

Macro fuer Kapazitaetsplanung - Extrem DRINGEND!
17.05.2007 08:43:00
Christian
Hi alle zusammen,
ich habe ein sehr grosses Problem. Ich absolviere momentan ein Praktikum und muss mich aktuell mit Makros auseinandersetzen, wo ich davon nahezu keine Ahnung habe. Ich hatte gestern schon was ins Forum geschrieben und man hatte mir auch direkt geholfen. (An dieser Stelle nochmal danke an die betreffende Person und toll, dass es so ein Forum gibt!). Nachdem das erste Problem behoben ist (es ging darum dass man in das 1.Worksheet 'Input' 4 Daten eingibt und diese dann automatisch in ein zweites Worksheet 'Capacity Planning' uebertragen und die Eingabedaten dann wieder aus der Eingabe geloescht werden.) und ich mich gestern noch ein wenig mit Makros auseinandergesetzt habe, dachte ich erst, mmh....scheint gar nicht sooooooooo schwer zu sein, .............aber dann wurde ich eines anderen belehrt. Mein neues Problem, macht mich ratlos. Mit fehlen einfach absolut die Fachkenntnisse und trotzdem muss ich bis naechste Woche was auf die Beine stellen. Ich hab auch schon nach aehnlichen Problemstellungen geschaut, aber nichts dergleichen gefunden. Ich wuerde gern dazu 3 Dateien hochladen, einmal die aktuelle Verison unter, dann eine Version, so wie es mal aussehen soll (habs aber nur manuell per Hand eingegeben, Ziel ist, dass es automatisiert berechnet wird) und dann 3. noch eine Uebersicht zur Aufteilung der Arbeitsstunden ABER der Upload bei Herber. de meckert, da die Dateien jeweils groesser als 300KB sind. Gibt es sonst noch wo eine Moeglichkeit zum Upload? Ansonsten meldet euch bei mir per email (christian.meier.1983@gmx.de) und ich schicke euch die Datein per Mial zu, fuer diejenigen, die sich fuer das Problem interessieren. (Ich denke es ist wohl etwas kniffliger!!!) Datei 1 (aktuelle Version), zeigt also nun, wenn ich die 4 Daten in der Maske 'Input' eingebe, dass diese dann in das 2. Worksheet uebertragen werden und automatisch (in Verbidung mit dem Sales Volume) die geplannten Arbeitsstunden fuer die einzelnen Kostenstellen errechnet werden. Soweit so gut. Nun kommt das Problem: Ziel ist es ein Makro zu kreieren (Erweiterung des Markos das mit dem OK-Button verknuepft ist) das die errechneten Arbeitsstunden AUTOMATISCH auf die Kalenderwochen verteilt. Der logische Vorgang des Makros muss also sein: Das Makro schaut sich das Delivery Date an bzw. die daraus errechnete Kalenderwoche der Auslieferung, geht dann in dem anhaengigen Kalender in die entsprechende Zelle (Auftrag, Kalenderwoche) und rechnet dann bis auf den Anfangszeitpunkt der Produktion zurueck. Vom Anfangszeitpunkt ausgehen muessen dann die Arbeitsstunden entsprechend eines Schemas verteilt werden. Das Schema schick ich dann auch per Mail oder lade es bei einer von euch alternativ genannten Adresse hoch. Dabei ist zu beachten, dass es eigentlich 3 Verteilungsschemen fuer die Arbeitsstunden gibt, naemlich je nachdem, welche Kategoerie von Auftrag es ist: 1. CL-HGBW, 2.CL-Casings oder 3. SD. Wie das Ergebnis aussehen soll, zeigt dann die 3. Datei, die auch noch hochgeladen werden soll! Die Arbeitsstunden sollen in den Wochen wo die Arbeiten anfallen, linear auf diese Wochen verteilt werden, sprich, wenn wir 20 Stunden Laser haben in 4 Laserwochen, dann also 5 Stunden pro Woche!!! So mit den anderen auch. Die 3. Datei, so wie es mal aussehen soll, zeigt fuer alle 3 Kategorien beispielhaft die Verteilung der Stunden. Fuer die einzelnen Kategorien ist das Schema immer gleich, ....aber das ganze ist ja dynamisch, da das Makro immer vom Delivery Date von allein zum anfang der Produktion zurueck rechnen muss. Ich wuerde luegen, wenn ich sagen wuerde, dass ich nun an einem Punkt bin, wo ich hinsichtlich der Programmiertechnik verzweifelt bin. Darum waere ich euch sehr dankbar, wenn ihr euch mal meinen Fall am verlangerten Wochenende annehmen wuerdet. Ich ware euch mehr als dankbar. Ich hoffe es findet sich jmd. der in der Sache schlauer ist als ich (was wohl nicht schwer sein wird! ;-) )
Aller liebste Gruesse aus Shanghai
Christian Meier

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Macro fuer Kapazitaetsplanung - Extrem DRINGEND!
17.05.2007 08:46:03
Christian
Was ich noch vergessen hab, bei druecken des Ok-Buttons soll zusaetzlich zu dem ganzen Gerechne, auch die Daten noch nach dem Delivery Date geordnet werden!!!!!!!!!

AW: Macro fuer Kapazitaetsplanung - Extrem DRINGEND!
17.05.2007 10:33:00
Christian
Hi alle zusammen,
also ich hab die 3 Dateien nun alternativ hochgeladen. Wie gesagt, ich hoffe jemand kann mir weiterhelfen.
1. Datei: Aktuelle Version: http://www.2xupload.de/file/1d18bebff8ed02b87c0850d053fb9184/capacity_planning-momentan.xls.html
2. Datei: So wie es aussehen sollte:
http://www.2xupload.de/file/48f4d249dd1b292e631915ef5a741863/capacity_planning-soll.xls.html
3. Datei: Uebersicht fuer die Aufteilung der Arbeitsstunden
http://www.2xupload.de/file/b45480d1daa735d5fab9d9d5b24d9111/Aufteilung_der_Arbeitsstunden.xls.html
Besten Gruss
Christian Meier

Anzeige
AW: Macro fuer Kapazitaetsplanung - Extrem DRINGEN
17.05.2007 17:45:00
fcs
Hallo Christian,
da hast du dir ja ein schönes Projektchen vorgenommen bzw. zugeteilt bekommen. Du kannst hier übrigens auch ZIP-kompmierte Dateien hochladen, falls die Originaldateien etwas zu großß sind
Mein erster Tipp:
Entferne aus den den Tabellen wenns irgend geht sämtliche verbundenen Zellen. Diese werden dir sonst bei der systematischen Abarbeitung der Kalenderwochen zur Verteilung der Stunden über den jeweiligen Zeitraum das Genick brechen. Du bist sonst mehr damit beschäfftigt Sondercode zu schreiben, der dich um die verbundenen Zellen manövriert als damit das eigentliche Problem zu lösen.
Das fängt im Input-Blatt bei der Eingabe der Categorie an und endet in der Capacity Planing mit den Monatswechseln in der Wochenmitte.
Es gibt keinen Grund die Zellen E6:F6 und E7:F7 als verbundene Zellen darzustellen. Ändere die Formatierung in "ohne Verbinden", Lösche die Spalte F, verbreitere Spalte E. Anschließend muss du im Makro des Buttons die Änderung der Spalte 7 in 6 einbauen.
In gleicher Weise muss du im Kalender alle verbundenen Zellen an den Monatswechseln in der Wochenmitte sowie für die Monatsnamen beseitigen. Verwende zum Zentrieren des Monatsnamens das horizontale Format "Zentrieren über Spalten". Falls du Monatswechsel unbedingt durch eine vertikale Linie kennzeichnen muss/möchtest, dann verwende hier statt Rahmen grafische Linien aus der Symbolleiste Zeichnen.
Nachdem diese Vorarbeit erledigt ist kann man daran gehen die eigenliche Aufgabe in Angriff zu nehmen.
Da dein Kalender über mindesten 2 Jahre geht kann man über die Kalender Woche, die du in Spalte E per Formel berechnest, alleine nicht bestimmen in welcher Spalte im Kalender der Delivery Date liegt.
Du muss also einen Algorithmus entwickeln, der dir aus dem Delivery Date beginnend vom 1.Tag der 1. Kalenderwoche (Diesen in einer Zelle eintragen!) die entsprechende KW-Spalte berechnet. Damit dein Projekt übersichtlich bleibt erstellst du dir dafür immer jeweils eine Function (Berechnungsprozedur) oder Sub, die von der Hauptprozedur aufgerufen wird.
Hier mal ein Beispiel wie das in deiner Datei aussehen kann. Dabei hab ich die Prozedur für das Übertragen der Inputdaten auch noch einmal vereinfacht. Damit es funktioniert mussen vorher die verbundenne Zellen beseitigt werden.
Ausgehend von der ermittelten Spalte kannst du jetzt abhängig von der Categorie (Auswahl des Schemas) Schritt für Schritt die Stunden für die einzelnen Phasen und Kostenstellen ermitteln und eintragen. Dabei immer erst einen Programmablaufplan erstellem, welche Daten kommen woher und wie müssen sie verarbeitet werden. Dannach die entsprechenden Prozeduren oder Functions in VBA erstellen.
Gruß
Franz

Private Sub CommandButton1_Click()
'Werte in Capacity Planning übertragen
Dim wks1 As Worksheet, wks2 As Worksheet
Dim lngLastRow As Long
Set wks1 = Worksheets("Input")
Set wks2 = Worksheets("Capacity Planning")
With wks2
If .Cells(.Rows.Count, 1).End(xlUp).Row 


Anzeige
AW: Macro fuer Kapazitaetsplanung - Extrem DRINGEN
18.05.2007 04:21:00
Christian
Hallo Franz,
zunaechst vielen Dank fuer deine ausfuehrliche Antwort uns sorry dass ich mich erst jetzt melde, aber die Zeitumstellung zwischen Deutschland und China ist schuld.
Also die Zellverbindungen habe ich nun alle rueckgaengig gemacht. So aber dann bin ich auch schon wieder an die Grenzen meiner Excel Faehigkeiten gestossen. Ich habe deinen ganzen Code mit dem Button verlinkt, aber irgendwie wurden wir dann etliche Fehlermeldungen angezeigt? Zuneachst hat er bei dem Ausdruck 'Call Berechnung(wks2, lngLastRow)' gemeckert (ich weiss nicht wofuer das steht), als ich es rausgelassen habe, hat die Uebertragung in das 2. Worksheet funktioniert unter Voraussetzung, dass ich den ganzen folgenden Teil ebenfalls ausgelassen habe:
Prozeduren in einem Modul:
'Deklaration von Projektweiten Variablen
Public iSpalteEnde As Integer

Sub Berechnung(wks As Worksheet, Zeile)
'Bestimmumg der Spalte für den Delivery Date
With wks
iSpalteEnde = Spalte_DeliveryDate(.Cells(Zeile, 4), wks.Cells(4, 2), _
.Range("P4").Column, vbMonday)
'Formeln Kopieren
.Range("E7:O7").Copy Destination:=.Range(.Cells(Zeile, 5), .Cells(Zeile, 15))
End With
End Sub



Function Spalte_DeliveryDate(DeliveryDate As Date, Day1 As Date, SpalteKW1%, _
Optional StartWoche = vbMonday)
'Day1 = 1. Tag der 1. KW im Kalender (am Besten eine Zelladresse im Plan, _
die bei JAhrewechsel angepasst wird)
'SpalteKW1 = TAbelenspalte der KW 1
'StartWoche = Wochentag an dem die KAlenderwoche beginnt
Dim Datum As Date
Spalte_DeliveryDate = SpalteKW1
Datum = Day1 + 7
Do While Datum 


Wenn ich es alles unter den Button eingefuegt habe kam es auch wieder zu Fehlermeldungen. Kann _ das alles direkt mit dem Button verknuepft werden oder wie muss das laufen? Es ist wohl kaum zu uebersehen, dass ich echt keinen Plan von Macros habe. Fuer mich ne echt bloede Situation, wenn Chef sagt mach mal ohne zu wissen wie. Das ganze Formelgewirr was ich soeben hierueber eingefuegt habe ist also dafuer da, dass Excel automatisch in die richtige Kalenderwoche springt?!! Und dann muss auch noch ein Makro zur Verteilung der Stunden geschrieben werden? Oh ha, dass kann ja lustig werden, wenn man nicht weiss wie. Und das kann man dann alles direkt unter Private


Sub CommandButton1_Click() fassen oder muessen die makros separiert werden?
Ich waer dir fuer eine erneute Antwort echt dankbar. Bist der Einzige der sich ernsthaft meinem  _
Problem angenommen hat. Dafuer bin ich dir sehr sehr dankbar!!! Ich moechte an dieser Stelle betonen, dass das auch nichts mit Faulheit zu tun hat, bloss leider kann man nicht von jetzt auf gleich mal eben so ne Programmiersprache lernen, wenn man vorher nie was damit zu tun hatte.
Ich hab die aktuelle Datei (nach Aenderungen der Zellverbindungen und Uebernahme deines Codes  _
fuer die Uebertragung der Daten in das 2. Worksheet) nun auch nochmal gezippt hochgeladen unter https://www.herber.de/bbs/user/42544.zip
Liebe Grusse aus Shanghai (und hoffentlich bis zu einer erneuten Antwort)
Christian Meier

Anzeige
AW: Macro fuer Kapazitaetsplanung - Extrem DRINGEN
19.05.2007 00:52:53
fcs
Hallo Christian,
das war jetzt ein hartes Stück Arbeit und für einen Anfänger mit bescheidenen Kenntnisse praktisch nicht zu bewältigen.
Ich hab in die Datei ein Kommentarblatt eingebaut, in dem die wesentlichen Änderungen in den Tabellen erläutert sind.
Ich hoffe das hilft jetzt weiter und meine eingefügten Kommentare erleichtern das Verständnis.
Da des öfteren von mir angewendet noch eine Erläuterung zum Befehl Call.
Mit Call wird eine andere Prozedur aufgerufen. Nachdem die aufgerufene Prozedur abgearbeitet ist
wird die Prozedur hinter der Call-Zeile fortgesetzt.
Werden in Klammern weitere Werte oder auch Variablen angegeben, so können diese von der
aufgerufenen Prozedur als Eingabewerte verwendet werden.
Mache dich bevor du die Datei an deinen Auftraggeber übergibst erstmal richtig mit den Prozeduren und
Befehlen vertraut. Denn du muss ja ggf. auch erläutern könne was, wo wie im Ablauf passiert.
https://www.herber.de/bbs/user/42565.xls
Um die Datei "Aufteilung der Arbeitsstunden.xls" hab ich mich noch nicht gekümmert. So wie ich das
sehe ist es ein Abbild (ohne) Daten aus den Database-Tabellen der anderen Datei, der der Erläterung
dient.
Gruß
Franz

Anzeige
AW: Macro fuer Kapazitaetsplanung - Extrem DRINGEN
19.05.2007 01:08:00
Christian
Hi Franz,
mensch was soll ich nun noch sagen. Ich bin ECHT sprachlos,.......besonders nachdem mich viele mit meinem Problem abblitzen lassen haben! Dass du dich dem echt angenommen hast finde ich mehr als nett! Ich weiss echt nicht wie ich dir danken kann, .....................gibt es da ne Möglichkeit? Weisst du das Problem ist diese Annonymität im Internet, ............die Leute können nicht unterscheiden, wen sie vor sich haben, ...........jemanden der einfach nur faul ist und Leute ausnutzen will oder jemand der wirklich ein Problem und dazu wie ich leider keinen Plan von VBA. DANKE!!!! Ich werd mir gleich mal alles in Ruhe anschaun (bei mir ist es ja mittlerweile morgens!!!!). zu der Datei "Aufteilung der Arbeitsstunden.xls": ja das ist nur ne optische Aufbereitung, um besser zu veranschaulichen wie die Stunden je nach Kategorie pauschal verteilt werden soll. In der Form wie sie dir vorliegt hinterliegen ihr keine Daten, nur eine reine Veranschalulichung, weil ich mir dachte die Aufteilung rein verbal zu erklären wäre etwas schwer!!!!
Ich hoffe ich höre nochmal was von dir.
Aller besten Gruss aus Shanghai
Christian Meier

Anzeige
AW: Macro fuer Kapazitaetsplanung - Extrem DRINGEN
19.05.2007 01:12:00
Christian
HI Franz,
ich nochmal. Sag mal, wenn das Datenblatt 'Aufteilung der Arbeitsstunden' nur eine Visualisierung war, dann ist das MAkro soweit fertig geschrieben, oder muss dann noch was daran geändert werden?
Nochmal vielen lieben Dank von einem übberglücklichen Praktikanten, der den heutigen Arbeitssamstag viel stressfreier angehen kann.
Christian Meier

AW: Macro fuer Kapazitaetsplanung - Extrem DRINGEN
19.05.2007 11:52:00
fcs
Hallo Christian,
aus meiner Sicht ist es fertig. Ich hab auch so ziemlich alles durchgetestet, was halt dann auch viele kleine extra Ergänzungen im Code erforderte, damit es nicht zu Fehlern und Makroabbrüchen kommt. Du muss halt nur noch mal überprüfen ob die von mir zusätzlich in den Database-Tabellen eingegeben Daten und Formeln soweit korrekt sind.
Ich melde mich nochmals per e-mail bei Dir. Falls es dann noch Probleme gibt, dann alles weitere über diese Schiene abwickeln. Wir müssen das Forum ja nicht unbedingt mit hochgeladenen Dateien zuschütten.
Gruß aus dem frühsommerliche Bayern
Franz
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige