< návrat zpět

MS Excel


Téma: Jak detekovat zamčený list rss

Zaslal/a 8.11.2022 9:39

Ahoj, pro zjišťování zdali je daný list zamčený nebo ne (a podle toho např. nastavovat popis odemykacího/zamykacího tlačítka) jsem dosud postupoval takto:
If ActiveSheet.ProtectContents = True Then
Jenomže ve skutečnosti tím nezjišťuji, zdali je daný list zamčený, ale něco trošku jiného (viditelnost obsahu buňky v zadávacím řádku při zamčeném listě). A zrovna toto chování potřebuju změnit, takže musím se chytit něčeho jiného. Jak má ta podmínka správně znít? Dívám se do https://learn.microsoft.com/en-us/office/vba/api/excel.worksheet.protect, ale nenacházím to tam 4

Předem dík

Zaslat odpověď >

#053794
avatar
https://stackoverflow.com/questions/51283005/how-check-if-excel-worksheet-is-protectedcitovat
#053795
avatar
Takže dle uvedeného linku je list zaručeně odemčen pokud platí všechny tři podmínky. Udělal jsem si na to funkci

Function ListZamcen(ws As Worksheet) As Boolean
With ws
If Not .ProtectContents And Not .ProtectDrawingObjects And Not .ProtectScenarios Then
ListZamcen = False
Else
ListZamcen = True
End If
End With
End Function


Předběžné testy hlásí, že to funguje. Díkycitovat
#053796
elninoslov
If Then Else EndIf sú úplne zbytočné. Môžete to skrátiť
With ws
ListZamcen = .ProtectContents or .ProtectDrawingObjects or .ProtectScenarios
End With

Ale chválim, že niekto hľadá riešenie na svoj problém aj svojpomocne, a následne ho aj zverejní. To sa nestáva.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