• 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.

Macro voor bladtabs en rij- en kolomkoppen

Status
Niet open voor verdere reacties.

tom300

Gebruiker
Lid geworden
6 feb 2008
Berichten
44
Hallo Allemaal,

In een Excel bestand met 7 sheets zitten de volgende macro.

Met deze macro beveilig ik elk werkblad in het werkboek:
Code:
Sub Beveiliging()
Dim wSheet As Worksheet
    For Each wSheet In Worksheets
        wSheet.Protect Password:="tralala"
        Next wSheet
        MsgBox "Het werkboek is beveiligd!"
End Sub

En met deze macro haal ik de beveiliging op elke sheet er vanaf, nadat het wachtwoord is ingetoetst:
Code:
Sub CommandButton1_Click()

    wachtwoord = txtPassword.Text
    If wachtwoord = Password Then
           
        Unload FrmBeveiligen
        Sheets("1").Unprotect (Password)
        Sheets("2").Unprotect (Password)
        Sheets("3").Unprotect (Password)
        Sheets("4").Unprotect (Password)
        Sheets("5").Unprotect (Password)
        Sheets("6").Unprotect (Password)
        Sheets("7").Unprotect (Password)
        
    Else
        Unload FrmBeveiligen
        MsgBox ("Het wachtwoord is onjuist!")
        
        
    End If
         
End Sub


Wat ik nu heel graag zou willen is dat bij het inschakelen van de beveiliging op alle sheets de bladtabs en rij- en kolomkoppen worden uitgeschakeld en bij het uitschakelen van de beveiliging moeten ze weer zichtbaar worden.

Ik heb het geprobeerd met:
Code:
ActiveWindow.DisplayWorkbookTabs = False

en:
Code:
ActiveWindow.DisplayHeadings = False

maar die doet alleen de tabs en koppen verwijderen / activeren op de sheet waar ik de macro heb gestart en alle andere niet.


Heeft iemand een idee hoe ik dit voor het hele workbook kan oplossen?



Thanks!!!!


Groeten, tom
 
Laatst bewerkt:
Test deze code eens:

Code:
Sub Beveiliging()
Dim wSheet As Worksheet
Application.Screenupdate = false 
   For Each wSheet In Worksheets
        wSheet.Activate
        ActiveWindow.DisplayWorkbookTabs = False
        ActiveWindow.DisplayHeadings = False
        wSheet.Protect Password:="tralala"
        Next wSheet
        MsgBox "Het werkboek is beveiligd!"
End Sub
Sub CommandButton1_Click()

    wachtwoord = txtPassword.Text
    If wachtwoord = "Password" Then
  Application.Screenupdate = false          
        'Unload FrmBeveiligen
    For i = 1 To 7
        With Sheets(i)
            .Unprotect (Password)
            .Activate
            ActiveWindow.DisplayWorkbookTabs = True
            ActiveWindow.DisplayHeadings = True
        End With
    Next
        
    Else
        Unload FrmBeveiligen
        MsgBox ("Het wachtwoord is onjuist!")
        
        
    End If
         
End Sub
 
Test deze code eens:

Code:
Sub Beveiliging()
Dim wSheet As Worksheet
Application.Screenupdate = false 
   For Each wSheet In Worksheets
        wSheet.Activate
        ActiveWindow.DisplayWorkbookTabs = False
        ActiveWindow.DisplayHeadings = False
        wSheet.Protect Password:="tralala"
        Next wSheet
        MsgBox "Het werkboek is beveiligd!"
End Sub
Sub CommandButton1_Click()

    wachtwoord = txtPassword.Text
    If wachtwoord = "Password" Then
  Application.Screenupdate = false          
        'Unload FrmBeveiligen
    For i = 1 To 7
        With Sheets(i)
            .Unprotect (Password)
            .Activate
            ActiveWindow.DisplayWorkbookTabs = True
            ActiveWindow.DisplayHeadings = True
        End With
    Next
        
    Else
        Unload FrmBeveiligen
        MsgBox ("Het wachtwoord is onjuist!")
        
        
    End If
         
End Sub

Excuses voor de late reactie.
Dit werkte perfect, waarvoor enorme dank!!!!!

Groeten, Tom
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan