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

Nový videokurz na Seduo: Excel pro začátečníky

     

Jste zde: Úvodní stránka » excel » vba-soubory » zobrazeni-listu-po-zadani-hesla-excel

Zobrazení listu po zadání hesla - Excel VBA


Jak zobrazovat vybraný list na základě zadání hesla?

Úvodem do zabezpečení

Pozor, zabezpečení Microsoft Excelu není dokonalé. Kdo trochu Excel zvládá, zobrazí si bez problému všechny listy (ač máte nastaveno zabezpečení maker). Jak na to? Stačí použít google ... osobně neposkytuji rady jak zabezpečení obejít. Jen upozorňuji, že zabezpečení Excel je slabé.

V článku postupně ukáži jak zobrazit listy na základě zadání hesla.

Předpokládám znalost jak funguje xlSheetVeryHiden u listu. Pokud si nejste jisti, doporučuji článek: Jak využít skrytí listu - xlSheetVeryHiden, kde se dozvíte více (tj. list se nezobrazí v přehledu jako skrytý, vidíte ho jen ve VBA).

K dispozici tyto příklady:

  • Příklad 1 - zobraz na základě hesla
  • Příklad 2 - už zobrazení souboru je heslované
  • Příklad 3 - možnost opětovné zobrazení dialogového okna pro heslo

Příklad 1

Po spuštění sešitu se zobrazí dialogové okno, které čeká na zadání hesla. Po zadání správného hesla se zobrazí příslušný list. Po zadání špatného hesla se zobrazí informace o špatném hesle.

Excel přistup na list na heslo

Tento sešit obsahuje VBA kódy a není zaheslován (zobrazíte si bez hesla VBA kód), ať si bez problému prohlídnete i zdrojové kódy.

Jak na to? Do ThisWorkbook zadejte tyto kódy:

Po zavření sešitu se provede:

Private Sub Workbook_BeforeClose(Cancel As Boolean) Dim List As Worksheet, Sesit As Workbook For Each List In ActiveWorkbook.Worksheets If List.Name <> "List1" Then List.Visible = xlSheetVeryHidden Next List ' ulozit ActiveWorkbook.Save End Sub

Po otevření sešitu se provede

Private Sub Workbook_Open() Dim List As Worksheet, Sesit As Workbook Dim Heslo As String For Each List In ActiveWorkbook.Worksheets If List.Name <> "List1" Then List.Visible = xlSheetVeryHidden Next List Heslo = Application.InputBox("Zadej heslo pro pristup. Dle hesla se zobrazí příslušný list.", , , , , , , 2) Select Case Heslo Case "123" Worksheets("list2").Visible = True Case "456" Worksheets("list3").Visible = True Case Else MsgBox "Špatné heslo." End Select End Sub

Jen připomínám, sešit se musí uložit s podporou maker.

Ke stažení zdarma

Soubor Zobrazení listu na heslo - Excel soubor ve formátu *.xlsm ke stažení zdarma. Soubor využívá makra, testován Excel 2007 a Excel 2010.

Poznámka: Hesla jsou uvedena na prvním listě. Pro zobrazení List2 je to heslo "123" a pro List3 heslo "456". Minimálně jeden list musí být viditelný, v tomto sešitě jde o List1.

Příklad 2

Jedná se o předchozí příklad, který je uložen pod heslem stejně jako vstup do VBA. Heslo je 0000, (0000 - je prý nejčastěji používané heslo ;-) tak ať vám ušetřím práci, dobře se pamatuje ;).

Zaheslováni VBA.

V Editoru VBA menu Tools - VBAProject Properties - Protection záložka Protection a zaškrtnout Lock project a vyplnit a potvrdit heslo tj. 0000.

Heslo pro otevření

Menu Soubor - uložit jako vybrat Nástroje - Obecné možnosti z zadat heslo pro otevření v máme případě opět 0000. Můžete si zvolit své heslo, jiné, lepší :)

Poznámka: Existují postupy jak hesla v EXCEL obejít.

Ke stažení zdarma

Soubor Zobrazení listu na heslo 0000 - MS Excel soubor ve formátu *.xlsm ke stažení zdarma. Soubor využívá makra, testován Excel 2007 a Excel 2010. Heslo pro přístup je 0000.

Své sešity v Excelu nezamykám, ale zde jde o ukázku, proto výjimečně je tento sešit zamčen ;) heslo je 0000 jak jsme už uvedl výše.

Příklad 3

Sešit je doplněn o tlačítko, které opětovně zobrazí dialogové okno pro zadání hesla.

Ke stažení zdarma

Soubor Zobrazení listu na heslo 0000 - Excel soubor ve formátu *.xlsm ke stažení zdarma. Soubor využívá makra, testován Excel 2007 a Excel 2010. Heslo pro otevření souboru je 0000.

Další doplňky

Jak lze dále doplňovat.

Následující soubory jsou odemknuty, bez hesel VBA a pro uložení. Pro praktické použití musíte ještě zaheslovat podle příkladu 2.

Zobrazovat všechny listy

Například když oprávněná osoba (šéf) bude chtít vidět všechny listy.

For Each List In ActiveWorkbook.Worksheets If List.Name <> "List1" Then List.Visible = True Next List

Speciální list s hesly a jmény

Každá osoba bude mít list se svým jménem a svým heslem. Tj. musí se zadat obě položky.

Možnost měnit heslo

Možnost změnit své heslo.

Závěrem

Na dotazy typu: Jak zjistit heslo? Jak obejít ochranu? Nezodpovídám, musíte využít google, který pomůže najít weby s těmito návody. Pokud své listy a sešity zabezpečujete jinak, můžete se zmínit v komentářích.

Článek byl aktualizován: 01.11.2014 14:35

Odměna

Ušetřil vám tento web čas, peníze? Pomohl vyřešit problém? Jste ochotni poskytnout symbolickou odměnu na další rozvoj? Vybrte si formu odměny, která vám vyhovuje.


Pavel Lasák

Pavel Lasák - autor webu

Microsoft Office (Word, Excel, PowerPoint) se věnuji od roku 2006. Své vědomosti a zkušenosti dávám k dispozici na různých školeních a konzultacích, ale také na tomto webu. K dispozici na tomto webu je mnoho návodu, tipů a triků včetně desítek různých šablon.

   Pavel Lasák LinkedIn Profil    Pavel Lasák Google+ Profil    Pavel Lasák facebook Profil    Pavel Lasák twitter Profil

Doporučte tento článek přátelům

Pokud vám článek pomohl, případně si myslíte, že může pomoci i někomu dalšímu, budu rád když jej sdílením doporučíte přátelům - děkuji:



Komentáře


Marianus

Přidáno: 22.07.14 14:48

... Ahoj slabost ochrany excely je mi znama, ako je tma ochrana VB sciptu ? ...


Přidání nového komentáře

Poznámka: Z časových důvodu není v mých sílách zodpovědět všechny dotazy. Děkuji za pochopení.




(vlož číslo padesátpět)

Z bezpečnostních důvodu dočasně nemůžete použít HTML značky, kromě <code> a </code> (pro vkládání VBA kódu). 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. V komentářích si tykáme. ;-)






Sdílejte

Pomohl Vám návod?
Sdílejte na Facebooku, G+
LinkedIn...

Nové články


Newsletter

Přihlaste se odběru novinek a získejte:
Ebook zdarma -
10 kroků ke zvládnutí (Word, Excel, PowerPoint)
Šipka Kniha 3D Více o ebooku ...

TOPlist Licence Creative Commons webarchiv rss XML

Stránky o MS Office (Excel) produktu společnosti Microsoft. Neslouží jako technická podpora.
| Email na autora: pavel.lasak@gmail.com | Copyright © : Pavel Lasák 2004 - 2016 | 3788

Tento web zatím neprošel jazykovou korekturou. Beta verze redakčního systému.