Zdravím vás,
celý den pracuji na určitém výpočtu a už si vážně nevím rady.
Pokusím se vysvětlit:
- v přiloženém souboru jsou výrobky A a B (finální), které můžou být doplněny z výrobku X. Mám poptávku, počáteční sklad, cílový sklad (rozuměj sklad, kterého bych chtěl docílit i s využitím výrobku X). V případě, že sklad po odečtení poptávky je vyšší než cílový, výsledný sklad by měl zůstat stejný, v případě, že je nižší, pokusit se doplnit z výrobku X. Pokud je výrobku X dostatek na vykrytí cílového skladu A i B, pak by měl být takový i výsledný sklad. Ale v případě, že výrobku X je méně, chtěl bych výrobky A a B doplnit podle % z celkové poptávky. V příkladu je ale vidět, že u výrobku A je sklad přeplněn (na 75), přestože by stačilo 64 a zbylých 11 se mohlo přidat na výrobek B (tedy 30 místo 19).
Věděl by si s tím někdo rady, prosím?
Díky moc.
Excel - komplexní příklad s podmínkami Vyřešeno
-
- Level 2.5
- Příspěvky: 303
- Registrován: srpen 12
- Bydliště: Praha
- Pohlaví:
Excel - komplexní příklad s podmínkami
Nemáte oprávnění prohlížet přiložené soubory.
ASUS TUF GAMING B550M-PLUS WIFI II | AMD Ryzen 5 5600 | Endorfy Fera 5 ARGB | SAPPHIRE PULSE Radeon RX 6700 XT | Kingston FURY 32GB KIT DDR4 3200MHz CL16 Beast RGB | Samsung 980 PRO 1TB + Samsung 970 EVO PLUS 2TB | Fractal Design Pop Mini Air RGB Black | GIGABYTE UD750GM | 24" ASUS TUF Gaming VG249Q | W11
-
- Level 5
- Příspěvky: 2344
- Registrován: leden 10
- Pohlaví:
Re: Excel - komplexní příklad s podmínkami
Dotaz - pokud bys v tom svem prikladu mel vyrobku X jen 6, tak by se z nej melo vyrobit 4x A a 2x B i kdyby to znamenalo, ze ti porad bude chybet 2x A na splneni poptavky? Nebo ma splneni poptavky prioritu pred cilovym skladem?
HP Elitebook 845 G8 (Ryzen 5650U, 32GB RAM, WD SN570 1TB, 14" fullHD IPS) + HP USB-C G5 Essential + 29" LG 29UM65 + 22" Eizo S2202W
-
- Level 2.5
- Příspěvky: 303
- Registrován: srpen 12
- Bydliště: Praha
- Pohlaví:
Re: Excel - komplexní příklad s podmínkami
Dobrá otázka, to mě nenapadlo. V tom případě by splnění poptávky mělo mít přednost. Pokud bych ale výrobky X měl jen 4, pak by doplnění skladu mělo být závislé na % chybějícího množství do nuly (do splnění poptávky). Pokud by něco takového šlo.
ASUS TUF GAMING B550M-PLUS WIFI II | AMD Ryzen 5 5600 | Endorfy Fera 5 ARGB | SAPPHIRE PULSE Radeon RX 6700 XT | Kingston FURY 32GB KIT DDR4 3200MHz CL16 Beast RGB | Samsung 980 PRO 1TB + Samsung 970 EVO PLUS 2TB | Fractal Design Pop Mini Air RGB Black | GIGABYTE UD750GM | 24" ASUS TUF Gaming VG249Q | W11
-
- Level 2.5
- Příspěvky: 303
- Registrován: srpen 12
- Bydliště: Praha
- Pohlaví:
Re: Excel - komplexní příklad s podmínkami Vyřešeno
Zkouším si tady na papír napsat různé scénáře a k tomu podmínky, ale asi jsem si vzal moc velké sousto... Přemýšlím nad tím nějak takto:
Nejdřív pomocné výpočty:
- A Ending = A Initial - A Demand
- A Diff to 0 = ABS( MIN (0 + A Ending; 0))
- A Diff to Target = ABS( MIN (A Ending - A Target; 0))
+ to samé pro B
A potom:
IF ( AND (A Ending < A Target; A Ending < 0; B Ending > B Target);
IF (X Initial > A Diff to Target; A Target; A Ending + X Initial);
IF ( AND (A Ending < A Target; A Ending >= 0; B Ending > B Target);
IF (X Initial > A Diff to Target; A Target; A Ending + X Initial);
//Výše by se mohlo zkrátit přidáním OR //
IF ( AND (A Ending < A Target; A Ending < 0; B Ending < B Target; B Ending > 0);
IF ( X Initial > SUM (A Diff to Target; B Diff to Target); A Target; IF ( X Initial > ....
A tady se začínám ztrácet, protože pak bych chtěl definovat, že má přednost doplnit A do nuly a potom ze zbytku X doplnit A i B do Targetu podle určitého % dle poptávky nebo možná dle toho, kolik procentuálně chybí to Targetu.
Šlo by to nějak jednodušeji nebo si prostě musím vytrpět desítky řádků podmínek?
Nejdřív pomocné výpočty:
- A Ending = A Initial - A Demand
- A Diff to 0 = ABS( MIN (0 + A Ending; 0))
- A Diff to Target = ABS( MIN (A Ending - A Target; 0))
+ to samé pro B
A potom:
IF ( AND (A Ending < A Target; A Ending < 0; B Ending > B Target);
IF (X Initial > A Diff to Target; A Target; A Ending + X Initial);
IF ( AND (A Ending < A Target; A Ending >= 0; B Ending > B Target);
IF (X Initial > A Diff to Target; A Target; A Ending + X Initial);
//Výše by se mohlo zkrátit přidáním OR //
IF ( AND (A Ending < A Target; A Ending < 0; B Ending < B Target; B Ending > 0);
IF ( X Initial > SUM (A Diff to Target; B Diff to Target); A Target; IF ( X Initial > ....
A tady se začínám ztrácet, protože pak bych chtěl definovat, že má přednost doplnit A do nuly a potom ze zbytku X doplnit A i B do Targetu podle určitého % dle poptávky nebo možná dle toho, kolik procentuálně chybí to Targetu.
Šlo by to nějak jednodušeji nebo si prostě musím vytrpět desítky řádků podmínek?
ASUS TUF GAMING B550M-PLUS WIFI II | AMD Ryzen 5 5600 | Endorfy Fera 5 ARGB | SAPPHIRE PULSE Radeon RX 6700 XT | Kingston FURY 32GB KIT DDR4 3200MHz CL16 Beast RGB | Samsung 980 PRO 1TB + Samsung 970 EVO PLUS 2TB | Fractal Design Pop Mini Air RGB Black | GIGABYTE UD750GM | 24" ASUS TUF Gaming VG249Q | W11
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 16
- 5145
-
od mirekol
20 říj 2023 08:31
-
- 3
- 1263
-
od Story-Long
14 srp 2023 10:11
-
- 5
- 1488
-
od mmmartin
13 črc 2023 18:44
-
- 2
- 1106
-
od honzzicek
01 črc 2023 08:57
-
- 1
- 1724
-
od mirekol
18 pro 2022 16:44
Kdo je online
Uživatelé prohlížející si toto fórum: CommonCrawl [Bot] a 0 hostů