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.

Zirkelschluss umgehen
#1
Hey Leute ich bin ganz frisch im Forum und habe mal eine Frage.
Ich hoffe das Bild könnt ihr euch ansehen, da ich auf Grundlage davon berichten werde.     
Meine Aufgabe ist es eine Kapazitätsliste für die Firma zu erstellen.
Die von links nach rechts immer kleiner werdenden Zahlen sind die restlichen Auftragszeiten, welche ich jeden Tag (X somit = Samstag oder Sonntag) mit der Mitarbeiterzeit subtrahiere. Bei der Ansicht befinde ich mich in einem Zwischenspeicher, der, falls der Auftrag abgeschlossen ist eine 0 anzeigt.
Beispielhaft lautet meine Formel darüber:
=ANZAHL2(M104:M112)-ZÄHLENWENN(M104:M112;"")-ZÄHLENWENN(M104:M112;0)
Somit rechnet er +alle Zeilen in der eine Formel steht - scheinbar leere Zeilen - fertige Aufträge.
Wenn ich diesen jedoch durch die Mitarbeiterzeit rechne kommt es zum Zirkelschluss (sonst würde parallel laufenden Aufträgen ja viel zu viel Zeit angerechnet werden)
Ich habe auch eine stark komprimierte Datei angehängt, die mehr Informationen über die Vorgehensweise gibt (eigentlich sind nur die beiden Zwischenspeicher von Relevanz).
.zip   KAP V1.2 Test .zip (Größe: 225,78 KB / Downloads: 8)
Ich habe viel versucht und merke, dass ich der Sache nicht gewachsen bin. Benötigt ihr mehr Informationen? Dann lasst es mich gerne wissen.
Ich freue mich auf eure Antworten und von euch lernen zu dürfen!
Antwortento top
#2
Hallöchen,

eventuell kannst Du Deine Frage präzisieren. Wo gibt es denn einen Zirkelschluss? Aus Excel kenn ich ja Zirkelbezüge und wenn man die wirklich braucht kann man eventuell mit der Einstellung der Iteration was bewirken.

Ansonsten hab ich mir mal auf zwei Blättern M104 angeschaut, sieht ziemlich leer aus. Da kann ich dann auch nicht mit einer Spur zum Nachfolger schauen, wo Deine Formel eigentlich steht Sad wenn ich das z.B. auf der Auftragsliste mit M5 versuche, komme ich nachO5, da steht aber nix mit ANZAHL Sad
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
Antwortento top
#3
Hi Leute, ich bin mir leider unsicher wie tief ich ins Detail gehen sollte. Ich habe jetzt noch einmal eine Datei angehängt, bei der wenn man AN 101 im Zusammenbauspeicher nach rechts zieht ein Zirkelschluss entsteht. Bzw. bei Zeile 100 entsteht ein #Wert Fehler.
Mit...

"Auftragsliste!$L6-Zusammenbauspeicher!AN$41/(ANZAHL2(AN102:AN107)-ZÄHLENWENN(AN102:AN107;"")-ZÄHLENWENN(AN102:AN107;0)+ANZAHL2(AN$99:AN100)-ZÄHLENWENN(AN$99:AN100;"")-ZÄHLENWENN(AN$99:AN100;0)+1"

...was in der Formel an Position AN101 enthalten ist, wird geprüft, ob über oder unter der Zeile weitere Zahlen stehen. Falls eine Zahl soll durch (1+1) geteilt werden und Falls zwei durch (2+1)

Die Auftragsliste L6 gibt die Gesamtstunden des Zusammenbaus an. Am Zusammenbauspeicher AN 41 steht die Tageszeit der Mitarbeiter angegeben.

=WENN($A101="";"";WENN(ODER(AN$5="Samstag";AN$5="Sonntag");"X";

Ausgabe von X am Samstag und Sonntag.

WENN(Auftragsliste!$C6>Zuschnittspeicher!AN$1;"";

Wenn der Starttermin größer ist als das jeweilige Datum wird "" ausgegeben

WENN(Zuschnittspeicher!AN101>Auftragsliste!$I6*(1-Auftragsliste!$H6);"";

Wenn ein bestimmter Bearbeitungsanteil im Zuschnitt noch nicht erreicht ist, wird "" ausgegeben.

WENN(UND(NICHT(ISTZAHL(AK101));NICHT(ISTZAHL(AL101));NICHT(ISTZAHL(AM101)));Auftragsliste!$L6-Zusammenbauspeicher!AN$41/(ANZAHL2(AN102:AN107)-ZÄHLENWENN(AN102:AN107;"")-ZÄHLENWENN(AN102:AN107;0)+ANZAHL2(AN$99:AN100)-ZÄHLENWENN(AN$99:AN100;"")-ZÄHLENWENN(AN$99:AN100;0)+1);

Wenn die die drei Zellen vor dieser Tabelle keine Zahl sind wird runter gerechnet (oben beschrieben)

WENN(KKLEINSTE($B101:AM101;1)<0;"";

Wenn der kleinste Wert von links aus gesehen unter Null dann wird "" ausgegeben.

WENN(ODER(ISTZAHL(AK101);ISTZAHL(AL101);ISTZAHL(AM101));KKLEINSTE($B101:AM101;1)-Zuschnittspeicher!AN$23;"ERR")))))))

Wenn links eine Zahl steht wird der Zuschnittsspeicher Minus die MA Zeit durch oben angegeben gerechnet.



Ich hoffe damit konnte ich bereits einiges beantworten. 
Hat jemand einen anderen Lösungsvorschlag?

Also vielleicht nochmal um das Problem präziser zu schildern.

Ich möchte, dass das Programm irgendwie prüft wie viele Aufträge im Zuschnitt und der Fertigung parallel an einem bestimmten Tag laufen (an jeden Tag im Jahr), um diesen Wert durch die verfügbaren Stunden der jeweiligen Abteilung zu rechnen, um so Mitarbeiterzeit gleichmäßig auf die Auftragszeit anzurechnen. 

Ich danke schon einmal für die Hilfe!


Angehängte Dateien
.xlsx   KAP V1.2 Test - Kopie.xlsx (Größe: 171,99 KB / Downloads: 5)
Antwortento top


Gehe zu:


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