Přeskočit navigaci | Přeskočit na novinky

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



| tisk stránky TISK | nahoru NAHORU |
| |

Další články k tématu




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




(vlož číslo šest)

Z bezpečnostních důvodu dočasně nemůžete použít HTML značky a URL. Děkuji za pochopení.
Děkuji, za Vaše 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




Google+

  

Facebook

facebook  

Novinky

Word: 12.5.2012:
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í

Poděkování patří hlavně mojí nejbáječnější manželce.

LinkedIN

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.