• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Blad zichtbaar maken met macro

Status
Niet open voor verdere reacties.

WIMLIN

Gebruiker
Lid geworden
17 jul 2007
Berichten
429
Ik heb een beveiligde werkmap met daarin een verborgen werkblad.

Dit blad wil ik zichtbaar maken vervolgens wat wijzigen, vervolgens dit blad weer verbergen. De werkmap weer beveiligen en het bestand opslaan is dit mogelijk.

Ik heb het geprobeerd met een macro op te slaan.

Maar het gaat fout op de eerste regel ActiveWorkbook.Unprotect

Sub BladPresentatieZichtbaarMaken()
'
' BladPresentatieZichtbaarMaken Macro
'
' Sneltoets: CTRL+z
'
Range("A1").Select
ActiveWorkbook.Unprotect
Sheets("Presentatie").Visible = True
Range("B4").Select
ActiveSheet.Unprotect
End Sub
 
Dit soort handelingen is eenvoudig zelf te vinden. Zet de macrorecorder aan, verberg een werkblad en stop de macrorecorder.
In de VBA omgeving staat nu een module met daarin de cde die je nodig bent.
 
Ik had zo al de macro opgenomen. Maar hij geeft er een foutmelding op.
 
Zit er een password op de protectie? Als dat zo is dan moet je het volgende toevoegen aan de unprotect: password="jouwpassword":

Code:
ActiveWorkbook.Unprotect Password = "jouwpassword"

Natuurlijk ook doen bij de unprotect van het sheet

Ron
 
Range("A1").Select
ActiveWorkbook.Unprotect Password = "xxxx"
Sheets("Presentatie").Visible = True
Range("B4").Select
ActiveSheet.Unprotect
End Sub

Ook met deze uitbreiding lukt het nog niet.

Fout 1004

Het wachtwoord is onjuist. Controleer etc etc etc.

Misschien nog een kleine aanpassing
 
Fout 1004

Het wachtwoord is onjuist. Controleer etc etc etc.

Is toch een behoorlijk duidelijke foutmelding. Zit er een password op het workbook / worksheet?
Als dat er opzit dan moet op de "xxxx" plek het JUISTE password komen, dus ook al dan niet met hoofdletters

Ron
 
Range("A1").Select
ActiveWorkbook.Unprotect (["XXX"])
Sheets("Presentatie").Visible = True
Range("B4").Select
ActiveSheet.Next.Select

Regel 2 is nu opgelost. Ik heb nu 2 bladen in mijn bestand. Ik wil nu naar het volgende blad. Ik zou dus denken met ActiveSheet.Next.Selct. Maar hier krijg ik wel weer foutmelding 1004. Het werkblad is presentatie is wel beveiligd. Maar ik moet er toch eerst naar toe kunnen gaan om de beveiliging er af te kunne halen.
 
Werkt prima bij mij:rolleyes:
.next.select werkt alleen als er ook een next sheet is!
Waarom niet "Sheets("blad1").Select". Dan pak je altijd het sheet wat je hebben wilt

Ron
 
Ron,

Het werkt super!!!

De oplossing was inderdaad sheets.("blad1") ...
Reuze bedankt.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan