Ahoj,
rád bych navázal s dotazem na kolegův problém s uzamykáním buněk po zapsání hodnoty. Jelikož je toto téma uzavřené, vznesu dotaz tímto způsobem. viewtopic.php?f=35&t=172117
Bylo by možné tento kód, viz níže, specifikovat jen pro určitou oblast buněk?
Předem moc děkuji.
'heslo listu
Const cstrHeslo As String = "heslo"
'před použitím odstraňte zámek všech buněk listu
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngBunka As Range
'odemčení listu heslem
ActiveSheet.Unprotect cstrHeslo
'pro každou z měněných buněk
For Each rngBunka In Target.Cells
'je buňka prázdná?
If IsEmpty(rngBunka) Then
'vyjmi ji oblasti zamčených
rngBunka.Locked = False
Else
'uplatni na ni zámek
rngBunka.Locked = True
End If
Next rngBunka
'znovuzamčení listu heslem
ActiveSheet.Protect cstrHeslo
End Sub
Makro excel - automatické zamykání buněk
-
- Pohlaví:
Re: Makro excel - automatické zamykání buněk
Technicky - ano, dělá se to v událostní proceduře běžně.
Prakticky - něco mi říká, že to nebude fungovat, resp. že to nemá smysl.
Prakticky - něco mi říká, že to nebude fungovat, resp. že to nemá smysl.
Kód: Vybrat vše
'heslo listu
Const cstrHeslo As String = "heslo"
Const cstrOblastAdresa As String = "B2:E20"
'před použitím odstraňte zámek všech buněk listu
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngBunka As Range
Dim rngOblast As Range
'nastavení sledovan0 oblasti
Set rngOblast = Range(cstrOblastAdresa)
'došlo ke změně pouze ve sledované oblasti?
If Union(Target, rngOblast).Address = rngOblast.Address Then
'odemčení listu heslem
ActiveSheet.Unprotect cstrHeslo
'pro každou z měněných buněk
For Each rngBunka In Target.Cells
'je buňka prázdná?
If IsEmpty(rngBunka) Then
'vyjmi ji oblasti zamčených
rngBunka.Locked = False
Else
'uplatni na ni zámek
rngBunka.Locked = True
End If
Next rngBunka
'znovuzamčení listu heslem
ActiveSheet.Protect cstrHeslo
End If
End Sub
Re: Makro excel - automatické zamykání buněk
Dobrý den,
moc děkuji za pomoc, funguje to tak, jak jsem si představoval. Ještě bych se zeptal, zdali by šla udělat úprava v tom, že by to uživatele vyzvalo k zadání hesla při rozkliknutí již zamčeného pole vyskakujícím oknem.
Ještě jednou moc děkuji.
moc děkuji za pomoc, funguje to tak, jak jsem si představoval. Ještě bych se zeptal, zdali by šla udělat úprava v tom, že by to uživatele vyzvalo k zadání hesla při rozkliknutí již zamčeného pole vyskakujícím oknem.
Ještě jednou moc děkuji.
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 1
- 1800
-
od atari
Zobrazit poslední příspěvek
28 dub 2023 12:08
-
-
Automatické přehrávání videa Příloha(y)
od fafejt » 09 úno 2024 13:59 » v Internet a internetové prohlížeče - 4
- 725
-
od fafejt
Zobrazit poslední příspěvek
09 úno 2024 17:30
-
-
- 9
- 1125
-
od mmmartin
Zobrazit poslední příspěvek
29 srp 2023 16:47
-
- 4
- 4462
-
od ArtisPier
Zobrazit poslední příspěvek
26 zář 2023 12:29
-
- 16
- 6306
-
od mirekol
Zobrazit poslední příspěvek
20 říj 2023 08:31
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 2 hosti