Foxymus
01.05.09,05:25
Zdravím Vás,
Chcem vás požiadať o pomoc ohľadne makra. Neviem či je možné vytvoriť makro, ktoré nakopíruje v každom zošite nový list podľa pozície 3 listu ( bývajú rôzne pomenované, ale potrebujem vždy nakopírať v poradí 3 list ) . Pomenovanie makrom vytvoreného listu bude rôzne, preto potrebujem pri spustení makra aby ma vyzvalo na pomenovanie listu, ktoré bude vytvárať. Ak sa to dá veľmi mi to pomôže.
Ďakujem.
PaloPa
01.05.09,08:57
Môžeš to prosím bližšie špecifikovať (resp. vysvetliť dôvod ) čo z tretieho listu má byť, ako a kde použité ?

Ak len kópia listu tretieho v poradí na koniec, dá sa takto:

Sub KopirujList()
Sheets(3).Select ' "Tretí_List"
Sheets(3).Copy After:=Sheets(Sheets.Count)
End Sub


Palo
marjankaj
01.05.09,09:10
Zdravím Vás,
Chcem vás požiadať o pomoc ohľadne makra. Neviem či je možné vytvoriť makro, ktoré nakopíruje v každom zošite nový list podľa pozície 3 listu ( bývajú rôzne pomenované, ale potrebujem vždy nakopírať v poradí 3 list ) . Pomenovanie makrom vytvoreného listu bude rôzne, preto potrebujem pri spustení makra aby ma vyzvalo na pomenovanie listu, ktoré bude vytvárať. Ak sa to dá veľmi mi to pomôže.
Ďakujem.


Nemohol by si to napísať trošku "slovenskejšie", aby sme vedeli o čo ide?
Alebo priložiť aj prílohu?
Foxymus
01.05.09,10:47
Prikladám zošit ( pokusný zošit ). Potrebujem vytvoriť kópiu listu č. 3 ( Názov 8 ) a premenovať ho na ( Názov 9 ) resp. môcť ho pomenovať.
Mám viacero zošitov ( 7 rôznych druhov ) v ktorých potrebujem rovnako vytvoriť kópiu 3 listu, avšak je pomenovaný iným menom a obsah tabuľky je odlišný ( rozmerovo aj obsahovo )
A mám otázku či existuje ( univerzálne makro - trebárs ) , ktoré dokáže po spustení v týchto 7 odlišných zošitoch naklonovať list č.3 ( počítané z ľava do prava - pevná pozícia ) a pomocou vstupnej tabuľky možnosť pomenovania.
Potrebujem to preto, pretoze mám spolu cca 350 zošitov a v každom potrebujem naklonovať list č. 3. ( názov je v 7 x 50 zošitov iný ) Robiť to manuálne je ťažké a preto to chcem zautomatizovať pomocou makra.

Spustenie makra chcem pomocou klávesovej skratky.
marjankaj
01.05.09,12:03
Prikladám zošit ( pokusný zošit ). Potrebujem vytvoriť kópiu listu č. 3 ( Názov 8 ) a premenovať ho na ( Názov 9 ) resp. môcť ho pomenovať.
Mám viacero zošitov ( 7 rôznych druhov ) v ktorých potrebujem rovnako vytvoriť kópiu 3 listu, avšak je pomenovaný iným menom a obsah tabuľky je odlišný ( rozmerovo aj obsahovo )
A mám otázku či existuje ( univerzálne makro - trebárs ) , ktoré dokáže po spustení v týchto 7 odlišných zošitoch naklonovať list č.3 ( počítané z ľava do prava - pevná pozícia ) a pomocou vstupnej tabuľky možnosť pomenovania.
Potrebujem to preto, pretoze mám spolu cca 350 zošitov a v každom potrebujem naklonovať list č. 3. ( názov je v 7 x 50 zošitov iný ) Robiť to manuálne je ťažké a preto to chcem zautomatizovať pomocou makra.

Spustenie makra chcem pomocou klávesovej skratky.

Makro sa spúšťa CTRL+m
kopíruje sa tretí list a čísluje sa to automaticky v zátvorkách ak chceš zadávať názvy manuálne dá sa to, môžem dorobiť.
Makro treba skopírovať do všetkých zošitov.
Vyskúšaj v prílohe, ak potrebuješ niečo doplniť, stačí povedať.
PaloPa
01.05.09,14:12
Prikladám zošit ... pretoze mám spolu cca 350 zošitov a v každom potrebujem naklonovať list č. 3. ( názov je v 7 x 50 zošitov iný ) Robiť to manuálne je ťažké a preto to chcem zautomatizovať pomocou makra.

Spustenie makra chcem pomocou klávesovej skratky.

Ak máš veľa zošitov na spracovanie, niekedy je lepšie ich spracovať z nejakého centrálneho "velína". Príklad je v prílohe.

Ak si rozipuješ Foxymus.zip napr. do adresára "C:\xPORADA\Foxymus\", spusti si _Vykonny_Book.xls. Tam si možeš nastaviť zoznam súborov na spracovanie (vrátane cesty s koncovou lomkou), číslo kopírovaného listu i nový názov.

Palo
Foxymus
02.05.09,10:40
Potreboval by som:

Makro príklad

1 krok - nakopíruje list č. 3 a dá ho na pozíciu č. 3
2 krok - pomenuje ho „ Názov 9 „ ( predpokladám, ze si toto pomenovanie dokázem upravit v editore)
3 krok – vymaže obsah buniek G2 až J27 , A21 až F 28 ( jedná sa o zlúčené bunky možno som ich označil nesprávne , nie som si istý , predpokladám že oblasť vymazania budem vedieť upraviť v editore)
4 krok – do bunky G 20 až 27 – „zlúčené bunky“ vloží slovo „ text „( ktorý budem môcť upraviť, predpokladám)
marjankaj
02.05.09,11:09
Potreboval by som:

Makro príklad

1 krok - nakopíruje list č. 3 a dá ho na pozíciu č. 3
2 krok - pomenuje ho „ Názov 9 „ ( predpokladám, ze si toto pomenovanie dokázem upravit v editore)
3 krok – vymaže obsah buniek G2 až J27 , A21 až F 28 ( jedná sa o zlúčené bunky možno som ich označil nesprávne , nie som si istý , predpokladám že oblasť vymazania budem vedieť upraviť v editore)
4 krok – do bunky G 20 až 27 – „zlúčené bunky“ vloží slovo „ text „( ktorý budem môcť upraviť, predpokladám)


Trochu som to upravil v predchádzajúcom príspevku "pokus2.xls"
A prečo ti nefunguje ten súbor od PaloPa? Mne to išlo bez problémov.
A po doplnení makra by si to mal vyriešené.
Foxymus
02.05.09,12:00
Trochu som to upravil v predchádzajúcom príspevku "pokus2.xls"

" pokus2.xls " - vyzerá to super ! Je to perfektné.

A prečo ti nefunguje ten súbor od PaloPa? Mne to išlo bez problémov.
A po doplnení makra by si to mal vyriešené.

Napíš mi pls. postup ako to mám správne spustiť. Možno som robil niečo zle.
marjankaj
02.05.09,12:39
Trochu som to upravil v predchádzajúcom príspevku "pokus2.xls"

" pokus2.xls " - vyzerá to super ! Je to perfektné.

A prečo ti nefunguje ten súbor od PaloPa? Mne to išlo bez problémov.
A po doplnení makra by si to mal vyriešené.

Napíš mi pls. postup ako to mám správne spustiť. Možno som robil niečo zle.

Palo ti to napísal

1. vytvor si na disku c: adresár(priečinok) xPORADA
2. nastav sa do priečinka a vytvor priečinok Foxymus
3. ulož súbor z porady Foxymes.zip do tohto priečinka c:\xPORADA\Foxymus
4. rozbaľ (rozzipuj ho) sú to štyri súbory
5. spusti Vykonny_Book.xls
6 ak spustíš makro v tých troch ostatných súboroch ti urobí požadované zmeny.

V súbore Vykonny_Book.xls si môžeš zmeniť názvy súborov aj cestu (mieto, kde je súbor uložený), poradové číslo listu, ktorý chceš kopírovať, aj nový názov. Neskúšal som či sa dajú pridávať súbory, ale myslím, že Palo to tam dal. Vyskúšaj sám.
Neviem v čom pracuješ windows XP alebo vista, aká verzia.
Napíš ktorý bod ti nejde.
PaloPa
02.05.09,13:27
Palo ti to napísal

1. vytvor si na disku c: adresár(priečinok) xPORADA
2. nastav sa do priečinka a vytvor priečinok Foxymus
3. ulož súbor z porady Foxymes.zip do tohto priečinka c:\xPORADA\Foxymus
4. rozbaľ (rozzipuj ho) sú to štyri súbory
5. spusti Vykonny_Book.xls
6 ak spustíš makro v tých troch ostatných súboroch ti urobí požadované zmeny.

V súbore Vykonny_Book.xls si môžeš zmeniť názvy súborov aj cestu (mieto, kde je súbor uložený), poradové číslo listu, ktorý chceš kopírovať, aj nový názov. Neskúšal som či sa dajú pridávať súbory, ale myslím, že Palo to tam dal. Vyskúšaj sám.
Neviem v čom pracuješ windows XP alebo vista, aká verzia.
Napíš ktorý bod ti nejde.

Len doplním Jana.
Makro je nastavené teraz tak, že prejde všetky riadky, kde je v stĺpci B (č.riadku) hodnota. Takže môžeš pridať súborov koľko chceš.

Na tvoju otázku z SS, použi Janove upravené makro.
Nový list na 3.tiu pozíciu viď červený riadok.

Sub KopirujList()
Sheets(3).Select ' "Tretí_List"
Sheets(3).Copy before:=Sheets(3)
ActiveSheet.Name = InputBox("Zadaj názov nového listu")
Range("g2:j27").ClearContents
Range("a21:f28").ClearContents
Range("g20").Value = InputBox("zadaj nový text v bunkách G20:G27")

End Sub

Pri jednoduchej úprave môžeš do ďalších stĺpcov pripraviť rozsah, ktorý sa má vymazať, resp. nový text pre bunky "g20" (pozri prílohu)

Myslím, že by bolo užitočné, ak by ludia pri zadaní problému napísali na akej verzii Excelu pracujú (prípadne i OS: najčastejšie XP, Vista) niekedy sa tie mrchy verzie neráčia :cool:

Palo
Foxymus
02.05.09,13:30
Pracujem s XP / office 2007


priklad umiestnenia zošitov:
C / denníky / Bratislava / budova 1 / budova 1 zariadenie 1
/ budova 1 zariadenie 2
/ budova 1 zariadenie 3 atď

/ budova 2 / budova 2 zariadenie 1
/ budova 2 / budova 2 zariadenie 2 atď

Chcem spytať: ako co najjednoduchsie zadavat cestu do zošitu Výkonný book ? Neviem ako inak než manuálne, avšak pri velkom počte zošitov ?
marjankaj
02.05.09,14:08
Pracujem s XP / office 2007


priklad umiestnenia zošitov:
C / denníky / Bratislava / budova 1 / budova 1 zariadenie 1
/ budova 1 zariadenie 2
/ budova 1 zariadenie 3 atď

/ budova 2 / budova 2 zariadenie 1
/ budova 2 / budova 2 zariadenie 2 atď

Chcem spytať: ako co najjednoduchsie zadavat cestu do zošitu Výkonný book ? Neviem ako inak než manuálne, avšak pri velkom počte zošitov ?

Daj si všetky zošity do jedného priečinka a potom si to v C-stĺpci skopíruješ koľkokrát budeš potrebovať. Keď to budeš mať včetko v jednom priečinku, nemusíš nič prepisovať, iba to skopíruješ. Môžeš to mať aj v rôznych priečinkoch, ale potom sa namakáš pri vypisovaní. Fungovať to však bude tak isto.
A názvy zošitov v stĺpci d tak isto, len zmeníš číslo. To za teba nikto neurobí. Ani makro.
Palo ti to teraz upravil tak ako to potrebuješ, ak ťa nenapadne zase niečo vylepšiť.

Ešte je tu riziko, že keď spustíš makro, urobí ti to vo všetkých súboroch, ktoré tam zadáš. Aj keď nebudú na to pripravené. To si však musíš postrážiť sám.
PaloPa
02.05.09,14:20
Ešte je tu riziko, že keď spustíš makro, urobí ti to vo všetkých súboroch, ktoré tam zadáš. Aj keď nebudú na to pripravené. To si však musíš postrážiť sám.

Súhlas. Najvačšie riziko všetkých hromadných úprav. Najlepšie, ak máš pôvodné súbory odzálohované niekde inde, pred spustením makra.
P.

Ešte drobnost. Zoznam súborov si možeš vypísať (napr. v TotalCommanderi) do textového súboru a potom cez CopyPaste do Excelu:
dir C:\xPORADA\Foxymus\*.XLS > C:\xPORADA\Foxymus\subory.txt
Foxymus
02.05.09,14:38
Ano cez total comander to ide.
Ďakujem Vám za pomoc. Som veľmi rád, že ste mi pomohli nájsť cestu k riešeniu môjho problému.