rozkopírování dat z CSV do listů podle datumu

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

Burdin
nováček
Příspěvky: 7
Registrován: leden 14
Pohlaví: Nespecifikováno
Stav:
Offline

rozkopírování dat z CSV do listů podle datumu

Příspěvekod Burdin » 05 říj 2017 22:18

Dobrý den,

moc prosím o pomoc s tvorbou makra pro excel.
Potřebuji na základě data rozkopírovat řádky z CSV do jednotlivých listů.

Jedná se o následující, mám CSV soubor, v kterém jsou záznamy o všech činnostech stroje, a je potřeba dělat denní analýzy, zatím to dělám ručně, ale rád bych to zautomatizoval.
Hlavní část CSV souboru co potřebuji je sloupec s datem (N) a sloupec s popisem chyby/činnosti (O). Tento soubor v tuto chvíli obsahuje max cca 5000 řádků, pak se začne přepisovat a záznam běží víc jak 12hod denně, takže se poměrně často mění.

1) Potřeboval bych načíst CSV (na to jsem už sám přišel), dále bych potřeboval aby makro projelo sloupec s datem záznamu, vyhodnotilo kolik různých datumů se nachází v souboru, podle toho vytvořilo příslušný počet nových listů, v názvu nového listu by bylo konkrétní datum a do listu by se nakopíroval sloupec s datem a k němu sloupec s příslušným záznamem. Zároveň je potřeba, že když bude načítat další CSV tak pokud bude v souboru datum, které už má vytvořený samostatný list, tak zkontroluje jestli se jedná o duplicitní záznamy nebo se mezitím vytvořily nějaké nové záznamy pro toto datum.

Názorné vysvětlení: Sloupec N obsahuje datum 1. - 3.10, takže makro vytvoří 3 listy (1.10, 2.10, 3.10) a v každém listu bude podle data zkopírován sloupec N a O z původního CSV

2) Dále bych pak potřeboval dělat do samostatného listu "event log" tj. při každém načtení CSV se zkopírují všechny chyby ze sloupce O a porovná se duplicita, tj. při načtení prvního CSV se zkopírují všechny chyby, které tam jsou a při dalším načtení se doplní pouze nové výskyty.
Tady je potřeba udělat vyjímku pro "New data currently saved to.." tyto záznamy by se do event logu nekopírovaly

Ono pak bude potřeba ještě další úpravy, ale ty třeba už pořeším sám, ale s těmito dvěma body si nevím rady. Přikládám CSV soubor a excel co jsem zatím vytvořil, ale mám pocit, že ten bude asi k ničemu.

Předem moc děkuji za pomoc, snad to nebude moc náročné a moc se omlouvám za délku popisu. Díky

Statistika.zip
(316.82 KiB) Staženo 31 x

Reklama
Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3195
Registrován: říjen 08
Pohlaví: Muž
Stav:
Offline

Re: rozkopírování dat z CSV do listů podle datumu

Příspěvekod atari » 06 říj 2017 14:54

Jelikož dáváš do přílohy zip (přečti si pravidla jak se zde chovat) tak to ani stahovat nebudu (nevím co v tom je schované (a nechci cokoliv rozbalovat) takže jen obecně.
Zadání je vcelku srozumitelné, a je to v podstatě požadvek na vytvoření calého projektu, sice malého rozsahu ale práce s tím je. Já začátečník ve VBA bych to rozhodně za jeden večer nestihnul. Je to nad moje časové možnosti. Takže snad se toho možná někdo jiný ujme.

Burdin
nováček
Příspěvky: 7
Registrován: leden 14
Pohlaví: Nespecifikováno
Stav:
Offline

Re: rozkopírování dat z CSV do listů podle datumu

Příspěvekod Burdin » 06 říj 2017 17:35

Omlouvám se, ale přílohu jsem dával do zipu, protože CSV soubor nejde načíst do fóra, nemluvě o tom, že spousta příspěvků má ZIP přílohu, tak jsem předpokládal, že to je takhle v pořádku.

AlarmsLog0.xls je potřeba přejmenovat na .csv

Bohužel ve VBA jsem také začátečník, takže tohle úplně nezvládnu, uvidím, třeba to pro někoho nebude problém
Přílohy
AlarmsLog0.xls
(480.15 KiB) Staženo 19 x
Statistika.xlsm
(271.15 KiB) Staženo 21 x

Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3195
Registrován: říjen 08
Pohlaví: Muž
Stav:
Offline

Re: rozkopírování dat z CSV do listů podle datumu

Příspěvekod atari » 06 říj 2017 22:14

Hele sorry, já to nešťastně napsal. To nebylo mylšeno tak, že zip je zakázaný. Mě šlo jen o to, že jsem to zrovna nechtěl ukládat, protože to stejně nebudu programovat. Takže v poho.

Uživatelský avatar
Grimm
Level 2
Level 2
Příspěvky: 162
Registrován: září 17
Pohlaví: Muž
Stav:
Offline

Re: rozkopírování dat z CSV do listů podle datumu

Příspěvekod Grimm » 09 říj 2017 19:11

Ahoj, něco sem zkusil. Jelikož sem věčný začátečník a nemám moc volného času je toho jen část. Načítání csv Ti funguje, do toho sem se nešťoural. V modulu1 je makro, které projde sloupec N na listu csv, vybere jedinečné hodnoty a vytvoří listy a do listů rozkopíruje hodnoty ze sloupců N a O. Duplicity jsem neřešil.
Když by Ti to takto vyhovovalo, zkusil bych i ty duplicity nebo se připojí někdo další a dojede to celé :-)

Statistika.xlsm
(269.54 KiB) Staženo 30 x

Burdin
nováček
Příspěvky: 7
Registrován: leden 14
Pohlaví: Nespecifikováno
Stav:
Offline

Re: rozkopírování dat z CSV do listů podle datumu

Příspěvekod Burdin » 26 říj 2017 15:24

Ahoj,

moc se omlouvám, že píšu až teď, byl jsem na služebce a moc mimo jsem už toho nezvládal.

Každopádně MOC DĚKUJU, skvělá práce :clap: , tohle je super a hodně to pomohlo, ještě jednou díky.
Ty duplicity by byly fajn, ale nakonec se ukazuje, že zase tak důležité nebudou.

Uživatelský avatar
Grimm
Level 2
Level 2
Příspěvky: 162
Registrován: září 17
Pohlaví: Muž
Stav:
Offline

Re: rozkopírování dat z CSV do listů podle datumu

Příspěvekod Grimm » 26 říj 2017 20:45

Ahoj, s těma duplicitama jsem si už zkoušel hrát. V příloze je výsledek. Ten kód sice není nic moc, ale vypadá to že funguje. Nehledá duplicity mezi dvěma soubory CSV, ale i v samotném souboru.
Ten soubor CSV co si poskytnul obsahuje 4 duplicity na listě 2.10 a 4 duplicity na listě 3.10. Makro je odstraní. Můžeš porovnat s předchozím souborem.

Statistika – bez duplicit.xlsm
(271.96 KiB) Staženo 28 x


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek

Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 8 hostů