Zapisování řádků z různých listů do jednoho souhrnného listu
Zapisování řádků z různých listů do jednoho souhrnného listu
Už jsem tu zase. Celý den jsem studovala báječnou funkci SOUČIN SKALÁRNÍ, a vyráběla evidenční listy pro výrobu. Nyní pátrám po způsobu, jak zařídit, aby se nově vložený řádek z libovolného listu (bude jich asi 30) zapsal do souhrnu v samostatném sběrném listu. Dokážu to zařídit pouze z jednoho primárního listu (vzor) - viz vzorce v listu souhrn. Bude mi na to stačit mé I(C)Q?
- Přílohy
-
- Production_2011.xlsx
- (73.02 KiB) Staženo 81 x
-
- Level 4
- Příspěvky: 1142
- Registrován: srpen 08
- Pohlaví:
- Stav:
Offline
Re: Zapisování řádků z různých listů do jednoho souhrnného l
Zrejme se jedna o prenos hodnot z bunek ruzne umistenych na zdrojovych listech podle nejakych pravidel postupne razenych v casove posloupnosti na list souhrn.
Tak na tohle uz bohuzel nebudou stacit funkce listu, tady bude nutno sahnout do arzenalu VBA.
Je nutno stanovit bunky, jejichz hodnoty maji byt preneseny a do kterych bunek (neco se da odvodit z ukazky pro uvedeny konkretni pripad, nic to ovsem nerika o pripadnych dalsich zaznamech na listu vzor) a stanovit, kdy je zaznam kompletni a je mozno prenest procedurou VBA prislusne hodnoty na list souhrn (tlacitkem, vlozenim hodnoty do konkretni bunky, otazka pripadnych dodatecnych zmen,....), dost dobre nelze na list souhrn vlozit propojeni na cca 30 listu s mnoha zaznamy.
Promysli a pak lze prikrocit k odpovidajicimu reseni.
Tak na tohle uz bohuzel nebudou stacit funkce listu, tady bude nutno sahnout do arzenalu VBA.
Je nutno stanovit bunky, jejichz hodnoty maji byt preneseny a do kterych bunek (neco se da odvodit z ukazky pro uvedeny konkretni pripad, nic to ovsem nerika o pripadnych dalsich zaznamech na listu vzor) a stanovit, kdy je zaznam kompletni a je mozno prenest procedurou VBA prislusne hodnoty na list souhrn (tlacitkem, vlozenim hodnoty do konkretni bunky, otazka pripadnych dodatecnych zmen,....), dost dobre nelze na list souhrn vlozit propojeni na cca 30 listu s mnoha zaznamy.
Promysli a pak lze prikrocit k odpovidajicimu reseni.
Re: Zapisování řádků z různých listů do jednoho souhrnného l
Konečně jsem se dostala k popisu problému. Je na listu "co chci".
Zápis bude kompletní po provedení druhého doplnění.
Nutná je možnost dodatečné opravy ve zdrojových listech a následné přepsání v listu souhrn.
Zápis bude kompletní po provedení druhého doplnění.
Nutná je možnost dodatečné opravy ve zdrojových listech a následné přepsání v listu souhrn.
- Přílohy
-
- Production_2011.xlsx
- (174.25 KiB) Staženo 98 x
-
- Level 4
- Příspěvky: 1142
- Registrován: srpen 08
- Pohlaví:
- Stav:
Offline
Re: Zapisování řádků z různých listů do jednoho souhrnného l
Predpokladam, ze doplneni napr. radku 13 na listu 700x1000 ma byt prirazeno k drive prenesenemu radku 13 z listu 700x1000, identifikace je predpokladam podle jedinecneho cisla objednavky.
Protoze nelze jednoznacne urcit udalost zahajujici prenos, bude nutno prenaset bunky jednotlive, to vsak vyzaduje zacit vyplnovat pocinaje bunkou Bxx - cislo objednavky, ktere je vlatne identifikatorem pro umisteni na listu souhrn, ten bude uzamcen jako ochrana proti nahodnym zmenam.
Procedura nedovoli vyplnit dalsi bunky radku, dokud nebude zadano cislo objednavky a neprobehne kontrola, ze toto cislo se na listu souhrn nevyskytuje, a po odsouhlaseni potvrzovaciho datazu bunka bude uzamknuta - souhlas? Na listu souhrn tak bude obraz stavu "rozpracovanosti" na listech 700x1000;...
Zustava otazka, jak postupovat v pripade, ze bude ve zdrojovem listu potreba zmenit cislo objednavky nebo cely zaznam odstranit? Zvolit podobny mechanizmus opravy znamy ze supermarktu u pokladen, kdy dojde k chybnemu zaznamu u polozky nakupu - dojde vedouci a opravi?
Protoze nelze jednoznacne urcit udalost zahajujici prenos, bude nutno prenaset bunky jednotlive, to vsak vyzaduje zacit vyplnovat pocinaje bunkou Bxx - cislo objednavky, ktere je vlatne identifikatorem pro umisteni na listu souhrn, ten bude uzamcen jako ochrana proti nahodnym zmenam.
Procedura nedovoli vyplnit dalsi bunky radku, dokud nebude zadano cislo objednavky a neprobehne kontrola, ze toto cislo se na listu souhrn nevyskytuje, a po odsouhlaseni potvrzovaciho datazu bunka bude uzamknuta - souhlas? Na listu souhrn tak bude obraz stavu "rozpracovanosti" na listech 700x1000;...
Zustava otazka, jak postupovat v pripade, ze bude ve zdrojovem listu potreba zmenit cislo objednavky nebo cely zaznam odstranit? Zvolit podobny mechanizmus opravy znamy ze supermarktu u pokladen, kdy dojde k chybnemu zaznamu u polozky nakupu - dojde vedouci a opravi?
Re: Zapisování řádků z různých listů do jednoho souhrnného l
Ano, s doplněním je to tak, jak píšeš.
Pokud k identifikaci bude sloužit číslo objednávky, musím tato čísla učinit jedinečná doplněním o _1; _2;,... to však není problém. (V jedné objednávce mám více položek, lišících se jen termínem dodání.) ANO, buňku Bxx tedy můžeme uzamknout.
Opravy: se souborem pracuji jen já, netřeba mít tedy zvláštní povolení. Jen by to chtělo pojistku ve formě vyskakovacího okna s dotazem, zda to opravdu chci udělat.
Pokud k identifikaci bude sloužit číslo objednávky, musím tato čísla učinit jedinečná doplněním o _1; _2;,... to však není problém. (V jedné objednávce mám více položek, lišících se jen termínem dodání.) ANO, buňku Bxx tedy můžeme uzamknout.
Opravy: se souborem pracuji jen já, netřeba mít tedy zvláštní povolení. Jen by to chtělo pojistku ve formě vyskakovacího okna s dotazem, zda to opravdu chci udělat.
-
- Level 4
- Příspěvky: 1142
- Registrován: srpen 08
- Pohlaví:
- Stav:
Offline
Re: Zapisování řádků z různých listů do jednoho souhrnného l
V priloze je sesit obsahujici procedury vykonavajici pozadovane - pracovni verze pro overeni. Pri otevreni povolit makra!
Vice informaci viz komentar na listu vzor!Q2
Otestuj na vsechny zpusoby, pripadne pozadavky pak doplnim.
Vice informaci viz komentar na listu vzor!Q2
Otestuj na vsechny zpusoby, pripadne pozadavky pak doplnim.
- Přílohy
-
- Production_2011.xlsm
- (200.68 KiB) Staženo 174 x
Re: Zapisování řádků z různých listů do jednoho souhrnného l
Cítím se hrozně hloupě, ale zatím jsem jen dokázala povolit makra a otevřít VBA. Nevím, jak modul Thisworkbook odemknout. Také nemohu odemknout jednotlivé listy. Nezamykala jsem je a neznám heslo. Formátování pak upravím (text, číslo, datum... ale barvy jsou v pořádku).
-
- Level 4
- Příspěvky: 1142
- Registrován: srpen 08
- Pohlaví:
- Stav:
Offline
Re: Zapisování řádků z různých listů do jednoho souhrnného l
Na prvnim radku v komentari je uvedeno:
Pokusim se tedy vysvetlit jinak:
Podle nastaveni v Moznosti aplikace Excel>Centrum zabezpeceni>Nastaveni maker je pripadne nutno povolit makra pri otevreni sesitu.
Makra jsou tedy povolena, otevrit editor VBA - Alt+F11 nebo pas karet>Vyvojar>VisualBasic, vybrat modul Thisworkbook (Tento sesit) a spustit proceduru Odemkni - kurzor vloz do teto procedury a stiskni F5 nebo v nabidce Run>Run Sub/... a sesit bude odemknut.
Uzamknuti listu souhrn a jednotlivych bunek ve sloupci B13:Bxx na listech 700x1000 a dalsich je potrebne z duvodu zachovani integrity dat.
Bunky v B13:Bxx zamyka procedura az po vlozeni cisla objednavky a po jeho potvrzeni, proto je nutno v teto fazi vsech odemknutych listu zrusit uzamknuti vsech bunek na zdrojovych listech (ne na listu souhrn, ten musi byt uzamknut): vybrat cely list ( kliknout na obdelnicek nachazejici se vlevo nahore v miste styku radkovych a sloupcovych indexu bunek - radek 1 a sloupec A) a pak Domu>Bunky>Format>Format bunek>zalozka Zamek a zrusit Uzamceno.
Udelat upravy formatovani (zejmena B13:Bxx a sloupce pro datum) a zavrit sesit. Jeho opetovnym otevrenim bude uzamknut list souhrn a bunky ve sloupcich B13:Bxx do kterych bylo vlozeno cislo objednavky za asistence procedur a bunka procedurou nastavena na Locked.
Otevri sesit - povolit makra - a ve VBA v modulu Thisworkbook spust proceduru Odemkni
Pokusim se tedy vysvetlit jinak:
Podle nastaveni v Moznosti aplikace Excel>Centrum zabezpeceni>Nastaveni maker je pripadne nutno povolit makra pri otevreni sesitu.
Makra jsou tedy povolena, otevrit editor VBA - Alt+F11 nebo pas karet>Vyvojar>VisualBasic, vybrat modul Thisworkbook (Tento sesit) a spustit proceduru Odemkni - kurzor vloz do teto procedury a stiskni F5 nebo v nabidce Run>Run Sub/... a sesit bude odemknut.
Uzamknuti listu souhrn a jednotlivych bunek ve sloupci B13:Bxx na listech 700x1000 a dalsich je potrebne z duvodu zachovani integrity dat.
Bunky v B13:Bxx zamyka procedura az po vlozeni cisla objednavky a po jeho potvrzeni, proto je nutno v teto fazi vsech odemknutych listu zrusit uzamknuti vsech bunek na zdrojovych listech (ne na listu souhrn, ten musi byt uzamknut): vybrat cely list ( kliknout na obdelnicek nachazejici se vlevo nahore v miste styku radkovych a sloupcovych indexu bunek - radek 1 a sloupec A) a pak Domu>Bunky>Format>Format bunek>zalozka Zamek a zrusit Uzamceno.
Udelat upravy formatovani (zejmena B13:Bxx a sloupce pro datum) a zavrit sesit. Jeho opetovnym otevrenim bude uzamknut list souhrn a bunky ve sloupcich B13:Bxx do kterych bylo vlozeno cislo objednavky za asistence procedur a bunka procedurou nastavena na Locked.
Re: Zapisování řádků z různých listů do jednoho souhrnného l
Návštěvníku, kde je chyba? Povolím makra. Otevřu VBA. Označím Thisworkbook. Stisknu F5. Objeví se okno Macros, v něm vybraný název Revize a tlačítko Run. Stisknu ho a vyskočí okno s oznámením: Nutno vybrat buňku B13:B1000. Vrátím se na list 1 a označím buňku B13. Znovu otevřu VBA ... stisknu F5, vyskočí okno s oznámením: U vybraného záznamu na zdrojovém listu změň č. objednávky ...atd. Proč po potvrzení tlačítka Run se listy neodemknou? Ani deklarované Run Sub jsem nikde neviděla.
Když nemůžu odemknout listy, neodemknu ani buňky... Přece nejsem tak blbá...
Když nemůžu odemknout listy, neodemknu ani buňky... Přece nejsem tak blbá...
-
- Level 4
- Příspěvky: 1142
- Registrován: srpen 08
- Pohlaví:
- Stav:
Offline
Re: Zapisování řádků z různých listů do jednoho souhrnného l
Kdyz mas povolena makra, tak v editoru VBA vlevo v okne Project klikni na ThisWorkbook a vpravo se otevre okno modulu ThisWorkbook a jsou v nem procedury, kurzor umisti do procedury Odemkni a stiskni F5. procedura odemkne vsechny listy. A dal pokracuj podle popisu v komentari, zejmena zrus uzamknuti listu a prekopiruj procedury z modulu listu vzor do modulu zdojovych listu ( v modulu vzor - vyber v okne Project dvojklikem), v okne modulu vyber tazenim mysi vse, ctrl+c, vyber modul listu 700x1000 ( v okne Project) a vloz ctrl+v a opakuj pro dalsi moduly.
PS.: Podivej se do: http://www.officir.ic.cz/excelentne.html je to sice pro nizsi verze Excelu, ale plne pouzitelne ve VBA, v Excelu je jen jine ovladani nez v Ex2007.
PPS.: myslim ze dalsi dotazy bude vhodne vest prostrdnictvim soukromych zprav SZ, at zbytecne nezaplevelujeme poradnu.
PS.: Podivej se do: http://www.officir.ic.cz/excelentne.html je to sice pro nizsi verze Excelu, ale plne pouzitelne ve VBA, v Excelu je jen jine ovladani nez v Ex2007.
PPS.: myslim ze dalsi dotazy bude vhodne vest prostrdnictvim soukromych zprav SZ, at zbytecne nezaplevelujeme poradnu.
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
-
Excel - automatický export listů xls do pdf včetně pojmenování Příloha(y)
od kalosek » 28 čer 2023 20:31 » v Kancelářské balíky - 2
- 2127
-
od kalosek
Zobrazit poslední příspěvek
29 čer 2023 19:39
-
-
-
2 monitory na různých místech + propojení
od Asanoth » 04 bře 2024 11:25 » v Rady s výběrem hw a sestavením PC - 3
- 958
-
od Asanoth
Zobrazit poslední příspěvek
18 bře 2024 11:19
-
-
-
Jak na joystitku předefinovat tlačítka a jak ho zprovoznit v různých hrách
od Speed_dead » 24 bře 2024 11:25 » v Vše ostatní (hw) - 3
- 962
-
od meda2016
Zobrazit poslední příspěvek
25 bře 2024 07:15
-
-
-
Kontrola kopírování dat z jednoho disku na druhý Příloha(y)
od orfan » 25 dub 2024 11:59 » v Vše ostatní (sw) - 15
- 750
-
od orfan
Zobrazit poslední příspěvek
25 dub 2024 19:51
-
-
- 3
- 2028
-
od Melvidor
Zobrazit poslední příspěvek
21 črc 2023 08:41
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 36 hostů