Voor mijn studie ben ik bezig een productieproces te simuleren in Excel. Dit is mij bijna helemaal gelukt, alleen een formule geeft in sommige gevallen onwaar als resultaat. Het lukt me niet erachter te komen waar dit antwoord vandaan komt. Omdat zowel de getallen als de samenstelling van het productieproces niet openbaar mogen worden kan ik niet het hele bestand uploaden.
Het model rekent per product uit waarnaar een bepaalde bewerking start en wanneer deze eindigt. Het productieproces bestaat uit een aantal bewerkingen die op verschillende machines plaats hebben en twee bewerkingen die op dezelfde machine plaatsvinden. De bewerkingen kunnen pas starten als de machine waarop de bewerking plaats vindt vrij is (dus het vorige product de betreffende bewerking heeft ondergaan) en er een plek vrij is om het halffabricaat op te slaan. Het probleem zit hem bij de twee bewerkingen die op een machine uitgevoerd worden. De eerste van die twee mag wel plaatsvinden voordat de tweede van een vorig product heeft plaatsgevonden. Maar moet starten na de tweede bewerking van het product dat daar weer voor gestart is. Daarbij komt dat de starttijd van de tweede bewerking op de betreffende machine niet verlaat mag worden. In eerste instantie heb ik het proces gesimuleerd alsof de twee bewerking een eigen machine hadden. De volgende formule geeft (in sommige gevallen) de melding onwaar. De formule die ik geschreven heb (die de onwaar melding geeft) van de starttijd van de eerste bewerking is als volgt:
=ALS(MAX(N10;MIN(L15;L16))+ALS(N2=50;$G14;ALS(N2=240;$F14;ALS(N2=630;$E14)))>=K23;MAX(MAX(N10;MIN(L15;L16));L23);ALS(MAX(N10;MIN(L15;L16))<=J23;ALS(J23+ALS(N2=50;$G14;ALS(N2=240;$F14;ALS(N2=630;$E14)))<=K23;J23;MAX(N10;MIN(L15;L16)))))
hierin is:
ALS(N2=50;$G14;ALS(N2=240;$F14;ALS(N2=630;$E14))) --> zorgt ervoor dat de bewerkingstijden van het juiste product genomen wordt.
MAX(N10;MIN(L15;L16)) --> de starttijd die de bewerking zou hebben als er niet twee bewerkingen plaats zouden hebben op de machine
K23 --> de startijd van de tweede bewerking van het vorige product.
L23 --> de eindtijd van de tweede bewerking van het vorige product.
J23
Waarom geeft de formule onwaar als antwoord? En hoe kan ik er voor zorgen dat dit altijd een waarde is die dus of tussen de tweede bewerking van het vorige product en het product daar weer voor of na de tweede bewerking van het vorige product komt?
Ik hoop dat iemand mij hiermee kan helpen en dat ik het probleem een beetje duidelijk heb kunnen maken.
Alvast bedankt!
Het model rekent per product uit waarnaar een bepaalde bewerking start en wanneer deze eindigt. Het productieproces bestaat uit een aantal bewerkingen die op verschillende machines plaats hebben en twee bewerkingen die op dezelfde machine plaatsvinden. De bewerkingen kunnen pas starten als de machine waarop de bewerking plaats vindt vrij is (dus het vorige product de betreffende bewerking heeft ondergaan) en er een plek vrij is om het halffabricaat op te slaan. Het probleem zit hem bij de twee bewerkingen die op een machine uitgevoerd worden. De eerste van die twee mag wel plaatsvinden voordat de tweede van een vorig product heeft plaatsgevonden. Maar moet starten na de tweede bewerking van het product dat daar weer voor gestart is. Daarbij komt dat de starttijd van de tweede bewerking op de betreffende machine niet verlaat mag worden. In eerste instantie heb ik het proces gesimuleerd alsof de twee bewerking een eigen machine hadden. De volgende formule geeft (in sommige gevallen) de melding onwaar. De formule die ik geschreven heb (die de onwaar melding geeft) van de starttijd van de eerste bewerking is als volgt:
=ALS(MAX(N10;MIN(L15;L16))+ALS(N2=50;$G14;ALS(N2=240;$F14;ALS(N2=630;$E14)))>=K23;MAX(MAX(N10;MIN(L15;L16));L23);ALS(MAX(N10;MIN(L15;L16))<=J23;ALS(J23+ALS(N2=50;$G14;ALS(N2=240;$F14;ALS(N2=630;$E14)))<=K23;J23;MAX(N10;MIN(L15;L16)))))
hierin is:
ALS(N2=50;$G14;ALS(N2=240;$F14;ALS(N2=630;$E14))) --> zorgt ervoor dat de bewerkingstijden van het juiste product genomen wordt.
MAX(N10;MIN(L15;L16)) --> de starttijd die de bewerking zou hebben als er niet twee bewerkingen plaats zouden hebben op de machine
K23 --> de startijd van de tweede bewerking van het vorige product.
L23 --> de eindtijd van de tweede bewerking van het vorige product.
J23
Waarom geeft de formule onwaar als antwoord? En hoe kan ik er voor zorgen dat dit altijd een waarde is die dus of tussen de tweede bewerking van het vorige product en het product daar weer voor of na de tweede bewerking van het vorige product komt?
Ik hoop dat iemand mij hiermee kan helpen en dat ik het probleem een beetje duidelijk heb kunnen maken.
Alvast bedankt!