
excel - dopocitani z vysledku
ahoj,
poradite mi opet z excelu?
1. ve sloupci A mam seznam cisel
2. v B1 mam konkretni cislo - napr. 10877
a ted bych potreboval, aby mi excel vybral (vysvitil ve sloupci A nebo zkopiroval do sloupce B) cisla ze sloupce A, ktera souctem davaji cislo z B1. pokud by nenalezl presne shodny soucet, tak nejblizsi moznou souctovou kombinaci.
vite nekdo jak na to?
diky moc!!
Tohle ani tak nesouvisí s Excelem, jako s algoritmizací. Důležité je prostě najít algoritmus, pak už to můžeš naprogramovat v čemkoli.
První hrubý nástřel:
- projít všechny možné kombinace (tj. začít dvojicemi, trojicemi, .... až po n-1). Pro každou takovou kombinaci:
- - sečíst
- - poznačit si hodnotu rozdílu
- - rozdíl = 0 => končím, dosáhl jsem čeho jsem chtěl
- - rozdíl (v absolutní hodnotě) < předchozí minimum => poznačím si dosažený rozdíl a použité sčítance
- jdu na další kombinaci.
bohuzel vubec nejsem programator, takze ikdyz to myslis dobre, ja si to nenaprogramuju, ikdybych znal princip. pevne jsem doufal, ze existuje nejaka funkce v excelu, ktera to umoznuje.
představ si řadu:
128 64 32 16 8 4 2 1
A jakým myslíš, že je ideální součet pro číslo 127?
to by asi šlo u malých množin.
U větších bych na to šel statisticky (např. zjistit si průměr, medián, minimum, maximum v porovnání s požadovaným součtem a na základě toho volit strategii hledání sčítanců.)
edit: čistě algoritmicky bych to viděl na seřazení od největšího čísla, následně nalezení prvního menšího členu a rekurzivní postupné přičítání vždy dalšího menšího členu než je stávající zbytek. To ovšem neřeší vše, např. když se dá dojít k lepšímu součtu od menších čísel, nebo v případě, kdy nejbližší větší číslo je blíže než součet všech větších - tam by ale mohla pomoci statistická analýza popsaná výše.
V excelu lze toto vyřešit pomocí nástroje Řešitel, kdy budeš nezáporně minimalizovat rozdíl součtu vybraných čísel a cílové hodnoty.
nu, skoda skoda..
pevne jsem doufal, ze to bude mnohem snazsi. ze bude existovat nejaka funkce - neco jako obdoba zobrazit duplicitni hodnoty pomoci podmineneho formatovani..
kazdopadne diky.
ps: nemel sem stesti a kod jsem nikde na netu nenasel. ze by to predemnou nikdo obdobnym zpusobem neresil?
co ti připadne těžkého na tom použít řešitele?
edit: teď jsem si to zkoušel, je to operace na 1 minutu - nastavení metody Simplex.
nejak se v nem neorientuju. ani mi nenabízí metody. mám office 2007, tak ze by uz prilis stara verze?