< návrat zpět
MS Excel
Téma: VBA - suma výsledků k jednotlivým skupinám
Zaslal/a Vikous 29.12.2019 16:28
Ahoj všem, chtěl bych vás poprosit o radu s tvorbou makra, které by jako pomůcka pro vytvoření podkladu k pravidelným reportům.
V přiloženém souboru je ukázka zdrojových dat, tak jak lezou z reportovacího SW (strukturu nemám možnost ovlivnit) a z těchto dat potřebuju vždy udělat souhrnný report s rozpadem na týdny v daném měsíci a pak výsledkem za poslední týden. Podle toho, jak data dostávám, dávám dohromady celkový souhrn za skupiny 1-3 a 5 a pak samostatně za skupinu 4. V reálu se každá skupina jmenuje různě - nemůžu zde vložit ostrá data, tak jsem je pro zjednodušení přejmenoval.
Zatím to dělávám ruční úpravou zdroje a pak přes kontinu ale říkám si, že makro by mi mohlo vždy x minut práce a trochu nervů ušetřit:) Když jsem ale makro zkoušel tvořit, tak jsem se zasekl u kontroly dat za jednotlivé skupiny - jediné, co mě napadlo bylo vypsat si jednotlivé skupiny a pak na každou z nich udělat samostatný cyklus. Když je jich 5, tak by to ještě asi šlo ale když se o nějakou rozšíří, tak se násobně zvětší rozsah podmínek --> umí VBA nějak načíst dle seznamu jednotlivé skupiny a pak pro každou z nich udělat potřebné úkony?
Ve zdroji je jen můj nástřel - není komplet
Pak jsem se zasekl při umisťování zjištěných hodnot do konkrétních polí - na základě daných proměnných jsem byl schopný data umístit na konkrétní řádek ale už ne do konkrétního sloupce (toto už ve zdroji nemám vůbec)
Zkoušel jsem hledat různě na netu, ale neumím nejspíš vhodně položit dotaz aby mi to našlo, to co potřebuju
V makrech jsem zatím celkem nováček, tak budu rád za každou pomoc nebo nasměrování, pod čím výše uvedené najít.
Předem moc děkuji, pokud si někdo udělá chvilku a pomůže!
Příloha: 45389_prehled.zip (21kB, staženo 29x)
Jj12345(29.12.2019 20:18)#045393 Soubor s makrem musíš nejdřív zazipovat a pak jej můžeš nahrát
citovat
Vikous(29.12.2019 20:41)#045394 Jj12345 napsal/a:
Soubor s makrem musíš nejdřív zazipovat a pak jej můžeš nahrát
Děkuji za informaci - příloha opravena.
citovat
AL(30.12.2019 13:26)#045398 Vba nie je potrebne. Ani zoznam skupin nie je potrebny. Cele sa to podla mna da poriesit cez Power Query. V prilohe mas nastrel. Akurat teda neviem, preco mas na liste Prehled v bunke B7 datum 20/12. Vy zacinate tyzden piatkom? Poznamky som do listu Prehled zapisal cervene. Ber to ako navod, netvrdim, ze to riesenie bude vyhovovat na 100 %, ja som to vzal ako cvicenie, ako vydolovat data z nie prilis podareneho zdroja. Dalej sa tym zaoberat nebudem. Jednotlive dotazy nie su optimalizovane, ale spravne vysledky podla zadania, ako som ho pochopil ja, davaju. Ak potrebujes v tom hornom prehlade po tyzdnoch za mesiac i posledny tyzden (ten tam nie je, to je ten rozpadnuty dole po dnoch), tak si v dotaze DataExLastWeek odstran krok Filtered Rows1. Bud ho uplne vyhod, alebo namiesto
= Table.SelectRows(#"Renamed Columns1", each [WeekOfYear]<LastWeekNumber ) napis
= Table.SelectRows(#"Renamed Columns1", each true)Příloha: 45398_prehled-pq.xlsx (36kB, staženo 34x) citovat
Vikous(30.12.2019 14:49)#045399 AL napsal/a:
Vba nie je potrebne. Ani zoznam skupin nie je potrebny. Cele sa to podla mna da poriesit cez Power Query. )
Děkuji za nástřel možného řešení. PQ aktuálně bohužel nemám ale zkusím si jej nechat doinstalovat a mrknul na řešení.
Co se data týče, tak to jsem přehlédl a neupravil po testování:/ Týdny berem standardně od pondělí:)
citovat
AL(30.12.2019 14:56)#045400 Aku verziu excelu pouzivas?
Subor som este niekolkokrat zmenil, stiahni si ho potom este znovu, v poslednej verzii som osetril, aby sa v kontingencke po dnoch zobrazovali i dni, v ktorych nie su hodnoty.
Jednotlive dotazy si mozes pripadne este optimalizovat, ale ako som zmienil, v jadre to funkcne je a je to bez jedineho riadku VBA. Pri novych datach na liste zdroj potom akurat staci aktualizovat vsetko a vysledky v kontingenckach sa prepocitaju. Pokial by si si data agregoval priamo v dotazoch cez Home->Group By, spat do zositu by bolo mozne preniest vysledky vo forme tabuliek, takze by sa nemuseli vytvarat kontingencne tabulky v liste. Proste, da sa s tym este pohrat.
citovat
Vikous(30.12.2019 15:15)#045402 AL napsal/a:
Aku verziu excelu pouzivas?
Subor som este niekolkokrat zmenil, stiahni si ho potom este znovu, v poslednej verzii som osetril, aby sa v kontingencke po dnoch zobrazovali i dni, v ktorych nie su hodnoty.
Jednotlive dotazy si mozes pripadne este optimalizovat, ale ako som zmienil, v jadre to funkcne je a je to bez jedineho riadku VBA. Pri novych datach na liste zdroj potom akurat staci aktualizovat vsetko a vysledky v kontingenckach sa prepocitaju.
Zatím máme 2013, kde je nutné PQ doinstalovat :/ Verzi 2016 nám budou instalovat až někdy v r 2020.
Za úpravu tabulky moc děkuji!
citovat
AL(30.12.2019 15:22)#045403 Rozumiem, tak si to PQ nechaj doinstalovat, na cistenie dat je to bomba a oplati sa to.
Celkom ma bavilo ten tvoj problem poriesit a par veci som sa pri tom sam naucil, to mam rad.
citovat
MePExG(30.12.2019 15:52)#045405 Ponúkam riešenie pomocou PQ, ktoré berie údaje zo súborov z nastaveného adresára a prezentuje ich pomocou KT (dvoch; 2. skrytá je pre graf vpravo) ovládaných spoločne s rýchlymi filtrami. Stačí doplniť súbor da nastaveného adresára a dať aktualizovať údaje.
Příloha: 45405_prehled_pqkt.xlsx (45kB, staženo 27x) citovat
AL(30.12.2019 22:07)#045410 Peter, povodne som na tomto mieste pisal nejake otazky k Tvojmu rieseniu, ale uz som to pochopil cele, takze som ich zase zmazal. Par hodin mi trvalo, nez som pochopil, ako vznikli slicers Years a Months spolu s tymito novymi poliami v KT. Vedel som, ze to bude nejaka vec, ktoru akurat nevidim, proste, stal som si par hodin na vedeni a uz som dost zuril, aky som neschopny. Ale nakoniec som na to zoskupovanie cez datumy prisiel.
Vdaka za riesenie, par znalosti som si z neho odniesol.
citovat
Vikous(31.12.2019 13:55)#045417 mepexg napsal/a:
Ponúkam riešenie pomocou PQ, ktoré berie údaje zo súborov z nastaveného adresára a prezentuje ich pomocou KT (dvoch; 2. skrytá je pre graf vpravo) ovládaných spoločne s rýchlymi filtrami. Stačí doplniť súbor da nastaveného adresára a dať aktualizovať údaje.Příloha: 45405_prehled_pqkt.xlsx (45kB, staženo 5x)
Moc děkuji za řešení!
Jakmile budu mít PQ nainstalované, tak budu pátrat, jak se toto všechno dokázalo:)
citovat