Wim van Dijk
Gebruiker
- Lid geworden
- 13 sep 2008
- Berichten
- 16
Ik zit met het volgende,
Ik heb diverse procedures geschreven waarin de eigenschap entirerow.hidden of entirecolumn.hidden wordt gebruikt op een beveiligd werkblad.
Dat werkblad is beveiligd met de volgende code:
Punt is dat het verbergen van kolommen door macro's die werken op het eigen werkblad (dus die worden aangeroepen door Activesheet) geen problemen geven. Alleen de besturingselementen die opgenomen zijn in een ander werkblad zorgen voor problemen. Een voorbeeld is deze code:
Zodra ik de beveiliging eraf haal gaat het goed, maar anders gaat het fout. Het merkwaardige is dat deze opdrachten in eerste instantie goed werkten, maar later niet meer, terwijl er geen letter code is veranderd. Nu ik het berichtje typ kan ik het niet laten om toch nog wat te proberen. Nu zie ik dat de eigenschap EntireRow en EntireColumn overbodig zijn. Die haal ik er al uit. Een snelle test laat zien dat helaas hiermee nog niets is opgelost.
Ik heb diverse procedures geschreven waarin de eigenschap entirerow.hidden of entirecolumn.hidden wordt gebruikt op een beveiligd werkblad.
Dat werkblad is beveiligd met de volgende code:
Code:
Private Sub Workbook_Open()
Dim wSheet As Worksheet
'Beveiliging inschakelen maar voor macro's uitschakelen
For Each wSheet In Worksheets
wSheet.Protect Password:="Secret", UserInterfaceOnly:=True, AllowFiltering:=True
Next wSheet
End Sub
Punt is dat het verbergen van kolommen door macro's die werken op het eigen werkblad (dus die worden aangeroepen door Activesheet) geen problemen geven. Alleen de besturingselementen die opgenomen zijn in een ander werkblad zorgen voor problemen. Een voorbeeld is deze code:
Code:
Private Sub ZM_Risico_Click()
If ZM_Risico.Value = False Then
Worksheets("RMmaatregelen").Columns("C").EntireColumn.Hidden = True
Else
Worksheets("RMmaatregelen").Columns("C").EntireColumn.Hidden = False
End If
End Sub
Zodra ik de beveiliging eraf haal gaat het goed, maar anders gaat het fout. Het merkwaardige is dat deze opdrachten in eerste instantie goed werkten, maar later niet meer, terwijl er geen letter code is veranderd. Nu ik het berichtje typ kan ik het niet laten om toch nog wat te proberen. Nu zie ik dat de eigenschap EntireRow en EntireColumn overbodig zijn. Die haal ik er al uit. Een snelle test laat zien dat helaas hiermee nog niets is opgelost.