< návrat zpět

MS Excel


Téma: Automat. zamčení listu heslem po zavření souboru rss

Zaslal/a 2.4.2014 15:27

Zdravím vás, přátelé.

V exelovském souboru se nachází dva listy (pro zjednodušení pojmenované List1 a List2). List1 je "volně přístupný" pro úpravy, List2 je pro úpravy uzamčen pomocí hesla (např. 1234).
Potřeboval bych docílit toho, aby při uzavření celého souboru došlo k automatickému uzamčení Listu2 výše uvedeným heslem.
Předem moc děkuji za návrhy řešení! B-)

OndraS

stop Uzamčeno - nelze přidávat nové příspěvky.

icon #018621
eLCHa
Zamykat list před zavřením nemá smysl, pokud celý sešit neuložíte. Proto musíte uzamčení provést před uložením, tedy v proceduře BeforeSavePrivate Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
ThisWorkbook.Worksheets("List2").Protect Password:="1234"
End Sub
Toto by ovšem znamenalo, že se vám při každém uložení list zamkne a vy jej budete muset odemknout, aby bylo možno v něm dále pracovat. Dalo by se to snad vyřešit následujícím kódemPrivate Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim bEvents As Boolean
bEvents = Application.EnableEvents
Application.EnableEvents = False

Cancel = True

With ThisWorkbook

Dim bLocked As Boolean
bLocked = .Worksheets("List2").ProtectContents

If Not bLocked Then
.Worksheets("List2").Protect Password:="1234"
End If

.Save

If Not bLocked Then
.Worksheets("List2").Unprotect Password:="1234"
End If

End With 'ThisWorkbook

Application.EnableEvents = bEvents
End Sub

Nemám otestováno, psáno z brucha.citovat
#018625
avatar
Ahoj.
Díky za návrh, žel jest nefunční.. Tím ovšem nevylučuji, že jsem jej nepoužil špatně.. 10
Používám verzi Excel 2010.
Nicméně jde mi přesně o ten první případ, tzn. aby se List2 automaticky zamknul pod heslem při každém uložení souboru.
A ještě jednou moc děkuji!
OndraScitovat
icon #018627
eLCHa
Vložil jste kód do modulu sešitu?citovat
#018628
avatar
Myslím si, že ano..
Snažím se i přiložit vzorový příklad, ale nějak se mi to nedaří (hláška, že se uložení nezdařilo, a že jsem pravděpodobně nezadal text z kontrolního obrázku; který se ovšem nikde nezobrazuje..).citovat
icon #018630
eLCHa
Je to ten obrázek?
http://wall.cz/upload/postatt/18629_screen.png

Dostalo se to do jiného vlákna ;))

Musíte vložit do modulu, který se jmenuje
ThisWorkbook
a ne do
Module1citovat
#018632
avatar
Tak už je vše v pořádku!

Ještě jednou moc děkuji za pomoc!!citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje