Stránka 1 z 1

Úprava makra na vložení systémového datumu

Napsal: 18 zář 2012 15:44
od Jsimi
Ahoj
Mám list šablona, kde je makro na vložení systémového datumu a možnost jeho změny pomocí tlačítek plus a mínus. Pak je zde makro, které danou šablonu rozkopíruje podle zadaného měsíce na správný počet listů označených 1-31 a šablonu skryje. Jak upravit makro pro datum a tlačítka + a - , aby fungovalo na všech listech v sešitu a ne jen na listu "šablona" ?
Předem dík za radu.

Kód: Vybrat vše

Sub tlačítko9_Datum()
'   Aktualizuje buňku G1 aktuálním datem
 Worksheets("Šablona").Range("G1") = Date
' Datum = Format(Date, "Long Date")

End Sub
Sub tlačítko10_datum_mínus()
Worksheets("Šablona").Range("G1") = Range("G1") - 1
End Sub
Sub tlačítko11_datum_plus()
Worksheets("Šablona").Range("G1") = Range("G1") + 1
End Sub

Re: Úprava makra na vložení systémového datumu

Napsal: 18 zář 2012 16:26
od Mirdad69
Ahoj,
jestli chceš mít na každém listu tlačítko + a -, tak makro zůstane, jak je a jen v každém listu (1- 30) v buňce, kde chceš mít to, co je v buňce G1 na listu "Šablona", bude vzorec =Šablona!$G$1

--- Doplnění předchozího příspěvku (18 Zář 2012 16:29) ---

A ten list šablona může být skrytý stále.

--- Doplnění předchozího příspěvku (18 Zář 2012 16:33) ---

Ale možná jsem nepochopil zadání.

Re: Úprava makra na vložení systémového datumu

Napsal: 18 zář 2012 17:06
od Jsimi
Možná jsem to špatně vysvětlil. Z té šablony se každý měsíc měsíc vytváří nový soubor, který obsahuje daný počet listů dle dní v měsíci. K tomu je určeno makro vytořit nový měsíc, které provede rozkopírování šablony, označení listů číslem 1-31, skrytí šablony, uložení do daného umístění atd. Já jsem doplnil tlačítko, které má na každém listě po stisknutí vložit aktuální datum do daného umístění, jenže to funguje pouze na té šabloně. Jakmile provedu vytvořit nový měsíc a listy jse jmenují jinak než šablona tak to nefunguje a ani nemůže, protože v makru je jasně definováno, že to platí pro list " Šablona". Já jen nevím, jak tuto definici
Worksheets("Šablona").Range("G1") = Date
přepsat, aby když toto tlačítko zmáčknu na listu třeba "5" fungovalo jenom na listu "5"
Přikládám i soubor šablony, ze které vycházím.

Re: Úprava makra na vložení systémového datumu

Napsal: 18 zář 2012 18:49
od cmuch
Soubor jsem nestahoval,
ale nestačilo by toto Worksheets("Šablona").Range("G1") = Date nahradit tímto

Dim shName as Variant
shName = ActiveSheet.Name - umístit někde na začátek makra
Worksheets(shName).Range("G1") = Date

Re: Úprava makra na vložení systémového datumu

Napsal: 18 zář 2012 20:29
od Azuzula
A co tam dát jen Range("G1") = Date
Stejně to tlačítko nejspíš bude na tom listu kde se bude zapisovat datum, takže veškerá definice listů je celkem zbytečná, ne? To jen takovej postřeh ;) Funkce je stejná, ale ušetří se několik řádků.

Re: Úprava makra na vložení systémového datumu  Vyřešeno

Napsal: 18 zář 2012 20:40
od Jsimi
Ahoj
Vyzkoušel jsem obě řešení a obě fungují jak mají. Oběma děkuji za pomoc.