Jste zde: Úvodní stránka » excel » vba-soubory » excel-vba-omezeni-platnosti-dokumentu
Omezení platnosti dokumentu - Excel VBA
Dávate k dispozici ceníky v MS Excel? Chce zamezit jejich použivání po skončení platnosti?
Úvodem
Obdržel jsem zajimavý dotaz. Jak zamezit otevření starého dokumentu. Když už jsem psal odpověď, proč ji zárověň nepublikovat, třeba pomůže i někomu jinému.
Pokud máte na webu ke stažení ceník výrobku v Excelu, je vhodné tomuto dokumentu určit platnost. Po spuštění neaktuálního ceníku obdrží uživatel informaci, že je neaktuální a případně můžeme tento dokument automaticky zavřít. Jak na to popíšu v tomto článku.
VBA kód
Pro zjištění, zda je dokument platný. Jednoduchá verze která zjistí zda je dokument starší než aktuální datum. V případě že ano zobrazí dialogové okno.
Private Sub Workbook_Open()
PlatiDo = DateValue("30.11.2011") 'plati do 30.11.2011
Dnes = Date
If PlatiDo < Dnes Then
MsgBox "Dokument je již neplatný."
End If
End Sub
Poznámka: Nahrát do ThisWorkBook
VBA kód 2
Rozšíření předchozího příkladu o automatické uzavření neplatného dokumentu v MS Excelu.
Private Sub Workbook_Open()
PlatiDo = DateValue("30.11.2011") 'plati do 30.11.2011
Dnes = Date
If PlatiDo < Dnes Then
MsgBox "Dokument je již neplatný. Stahněte si novou verzi na officel.lasakovi.com, tento ceník bude uzavřen."
End If
ActiveWorkbook.Close False
End Sub
Poznámka: Dialogové okno můžeme doplnit o informaci, kde může čtenář najít aktuální verzi.
Další možností rozšíření?
Jelikož možností jak výše uvedený kód rozšířit je spousta, pokusím se doplnit dle dotazů v komentářích.
Článek byl aktualizován: 28.01.2012 20:11
Další články k tématu
- Zpracovatelné formáty souborů v Excelu
- Existuje soubor - adresář (složka)
- Vypis cesty k souboru
- Vypsat adresáře - soubory
- Je soubor otevřen
- Otevřít soubor s heslem
- Otevřít soubor a předat mu nějaký parametr
- Tisk do *.pdf
- Smazat soubor
- Vytvořit smazat adresář
- Kopírovat a přejmenovávat soubory
- Omezení platnosti souboru - dokumentu - právě čtete
- Kdo přistupuje do souboru
- Velikost souboru
- Je atribut souboru pouze pro čtení - VBA Excel
Komentáře
Jirka
Přidáno: 30.01.12 13:33
Pokoušel jsem se makro do dokumentu zapracovat, ale nefunguje to. Funkce private nepovolena a pak chyba v syntaxi. Rád bych ale spíše omezil platnost některých svých word dokumentů s nabídkami. Připravuju je přes OpenOffice. Pokud by existovalo něco pro PDF, bylo by to ještě lepší. Děkuji za radu jirka
Pavel Lasák
Přidáno: 30.01.12 18:10
To Jirka: Zkoušíte to v Excelu? Je kód vložen do ThisWorkBook? Bohužel OpenOffice neznám.
Jirka
Přidáno: 30.01.12 21:47
OpenOffice má v sobě taktéž makra a mají fungovat podobně jako v excelu. Nevím kde je v excelu ThisWorkBook.
Jirka
Přidáno: 31.01.12 13:58
Zkouším to v openoffice. Jsou tam podobná ve VBA....už se mi to podařilo zapsat, vypadá to takto: Private Sub Workbook_Open() PlatiDo = DateValue("31.1.2012") 'plati do 31.1.2012 Dnes = Date If PlatiDo < Dnes Then MsgBox "Dokument je již neplatný. Stahněte si novou verzi na officel.lasakovi.com, tento ceník bude uzavřen." End If ActiveWorkbook.Close False End Sub ale píše mi to BASIC, chyba v syntaxi, neočekávaný symbol If a je přitom označen tento řádek Dnes = Date If
Pavel Lasák
Přidáno: 31.01.12 18:28
To Jirka: Bohužel sinataxi OpenOffice neznám. Zkuste na jejich webu.
jirka
Přidáno: 31.01.12 21:50
I tak moc díky. Aktuálně to řeším na www.openoffice.cz pokud chcete nahlédnout, jak moc a jestli vůbec je VBA odlišný v obou aplikacích.
Pavel Lasák
Přidáno: 01.02.12 17:29
To Jirka: Děkuji za info, rád nahlédnu, ale zatím zůstanu u VBA pro MS Office.
Přidání nového komentáře
Za obsah komentářů neodpovídám, jelikož jsou komentáře publikovány ihned po jejich napsání čtenářem. Toto nemohu nijak ovlivnit. Přesto si vyhrazuji možnost jakýkoli neslušný komentář smazat bez udání důvodu.
Nejnovější článek
Z článku o
excel jsem jako poslední přidal či upravil článek
14.05.2012:
Kombinování funkcí - vzorců.
Nejčtenější článek
Excel
- Základy MS Excel
- menu Soubor
- Formát dat
- Vložit
- Grafy
- Vzorce (Funkce)
- Matice
- Data
- Revize (Nástroje)
- VBA Úvod a seznamy článků
- VBA Teorie základy
- VBA Buňky cell
- VBA Listy sheet
- VBA Práce se soubory
- Zpracovatelné formáty souborů v Excelu
- Existuje soubor - adresář (složka)
- Vypis cesty k souboru
- Vypsat adresáře - soubory
- Je soubor otevřen
- Otevřít soubor s heslem
- Otevřít soubor a předat mu nějaký parametr
- Tisk do *.pdf
- Smazat soubor
- Vytvořit smazat adresář
- Kopírovat a přejmenovávat soubory
- Omezení platnosti souboru - dokumentu
- Kdo přistupuje do souboru
- Velikost souboru
- Je atribut souboru pouze pro čtení - VBA Excel
- VBA Formuláře (UserForm)
- VBA Grafy
- VBA Application
- VBA Pás karet, Menu
- VBA Triky
- VBA praktické příklady kódu
- Praktické příklady
- Finanční poradce
- Šablony - Templates
- Testy
- Ostatní
Google+
Novinky
Matematické rovnice (vzorce) - Word 2010
Excel: 14.05.2012:
Kombinování funkcí - vzorců
Access: 28.04.2012:
VBA - Jak spustit v MS Access
Power Point: 25.04.2012:
SmartArt - PowerPoint 2010
Outlook 26.04.2012:
Outlook 2010 - jak vypadá
Project: 05.04.2012:
Kalendář ukázka
OneNote: 17.10.2010:
OneNote 2010 – popis obrazovky
Office 30.04.2012:
Kde hledat odpovědi na dotazy o MS Office
Poděkování
Translate
Stránky o MS Office produktu společnosti Micosoft. Neslouží jako technická podpora.
| Email na autora: lasak@centrum.cz | Copyright © : Pavel a Danka 2006 - 2012 |
| Doporučuji: Advokátní kancelář Brno - Dana Lasáková |
386
Tento web zatím neprošel jazykovou korekturou. Beta verze redakčního systému.