Een van de slicers werkt niet na uitvoeren macro

BarbaraC

Gebruiker
Lid geworden
18 sep 2023
Berichten
21
Beste,
Ik heb een Excelbestand met een tabel, waarbij er 3 slicers gebruikt worden om te filteren.
Als ik het werkblad manueel beveilig, en daarbij aanvink 'objecten bewerken', dan werken de 3 slicers perfect en is de beveiliging ook in orde.
Als ik het werkblad laat beveiligen via de macro (zie hieronder), dan is het werkblad inderdaad beveiligd, maar werkt alleen maar de 1ste slicer, de andere 2 slicers werken niet. Hoe komt dit?

Code:
Macro:
Sub BeveiligenMachines()
    ' Schakel beveiliging in voor het werkblad "Machines"
    With Sheets("Machines")
        .Protect _
            DrawingObjects:=True, _
            Contents:=True, _
            Scenarios:=True, _
            AllowSorting:=True, _
            AllowFiltering:=True, _
            AllowUsingPivotTables:=True, _
            UserInterfaceOnly:=True
    End With
End Sub
 
Laatst bewerkt door een moderator:
Waarom 'beveiligen' ?
Waarvoor een beveiliging in Excel bedoeld is: omdat men geen gegevens mag aanpassen in de tabel in blad 1 (Sheet 'Machines'). De macro voert een aantal stappen uit (adhv van parameters op blad 2) en als laatste stap moet het werkblad (blad 1) opnieuw beveiligd worden.
 
Niet opslaan van een gewijzigd bestand heeft hetzelfde effekt.
 
Niet opslaan van een gewijzigd bestand heeft hetzelfde effekt.
Niet waar. Als men blad 1 wilt aanpassen, moet men de nodige parameters aanvullen in blad 2 en daar op de knop klikken (waardoor macro uitgevoerd wordt). Via die macro wordt beveiliging in blad 1 opgeheven, de nodige wijzigingen uitgevoerd, en wordt blad 1 opnieuw beveiligd. Na het uitvoeren van die macro, lukken 2 van de 3 slicers in blad 1 niet meer. Dat is dus mijn probleem.
Als ik de beveiliging manueel uitvoer, dan heb ik geen probleem.

Niet opslaan zou betekenen dat die nodige wijzigingen ook niet opgeslagen werden.
 
Koffiedik kijken.
 
Koffiedik kijken.

En wat bedoel je daarmee?

Ik heb nu drie zinloze reacties gekregen op mijn vraag. Ik ben daar helemaal niks mee... Graag had ik op zijn minst enkele suggesties gekregen die ik zelf eens kon uitproberen... Dus als je een suggestie hebt, dan hoor ik het graag... Moet er bvb. iets aan de macro aangepast worden?
 
Begin eerst eens bij jezelf en gebruik code tags rondom VBA-code.
Plaats je bestand hier. Daar treedt toch het probleem op ?
Het is kenmerkend voor beginnelingen in Excel en VBA dat zij vooral aandacht besteden aan 'beveiliging' en visuele presentatie in plaats van aan functionaliteit en gestructureerde opbouw van gegevens.
 
Begin eerst eens bij jezelf en gebruik code tags rondom VBA-code.
Plaats je bestand hier. Daar treedt toch het probleem op ?
Het is kenmerkend voor beginnelingen in Excel en VBA dat zij vooral aandacht besteden aan 'beveiliging' en visuele presentatie in plaats van aan functionaliteit en gestructureerde opbouw van gegevens.
Code:
Sub BeveiligenMachines()
' Schakel beveiliging in voor het werkblad "Machines"
With Sheets("Machines")
.Protect _
DrawingObjects:=True, _
Contents:=True, _
Scenarios:=True, _
AllowSorting:=True, _
AllowFiltering:=True, _
AllowUsingPivotTables:=True, _
UserInterfaceOnly:=True
End With
End Sub


Alsjeblieft, met tags... Die was ik in mijn haast gewoon vergeten. Ik post immers zelden op fora omdat ik meestal mijn plan wel kan trekken...

Ik vind die beveiliging nodig. Als er geen beveiliging is, dan zou de datatabel een zootje worden.. Daar hoef ik mij toch niet voor te verantwoorden? Zo lijkt het anders wel.
Als je die beveiliging niet nodig vindt, dan hoor ik graag waarom, en hoe het dan wel kan... Ik leer immers zeker graag bij.

Als ik suggesties kan krijgen, zonder een bestand te hoeven plaatsen, dan geef ik daar graag de voorkeur aan.. Er zijn er genoeg op dit forum die een vraag stellen zonder een bestand te plaatsen..
Voor hetzelfde geld is dit een veel voorkomend probleem en kan iemand in 1-2-3 een oplossing bieden of een suggestie geven waarmee ik verder kan.
 
Zet je voorkeur opzij.
Bestanden nabootsen hebben de meesten een hekel aan.
 
Zet je voorkeur opzij.
Bestanden nabootsen hebben de meesten een hekel aan.

Bestand in bijlage.
Tabblad Machines is beveiligd, maar kan wel nog de slicers gebruiken (alledrie).
Van zodra een lijntje toegevoegd wordt (via tabblad 'Toevoegingen' - cel C3, C14-15-16-17 verplicht btw), werkt er maar 1 slicer in tabblad Machines. nl. slicer 'Afdeling'.

Hetzelfde geldt als iets uitgevoerd wordt via tabblad 'Wijzigingen'.

(En exact hetzelfde nodig bij tabblad 'Klein Materiaal' en 'Rollend Materieel')
 

Bijlagen

  • Lijst TEST.xlsm
    147,2 KB · Weergaven: 5
DrawingObjects = False
Code:
Sub BeveiligenMachines()
    ' Schakel beveiliging in voor het werkblad "Machines"
    Sheets("Machines").Protect _
            DrawingObjects:=False, _
            Contents:=True, _
            Scenarios:=True, _
            AllowSorting:=True, _
            AllowFiltering:=True, _
            AllowUsingPivotTables:=True, _
            UserInterfaceOnly:=True
  End Sub

Of:
Code:
Sub BeveiligenMachines()
    ' Schakel beveiliging in voor het werkblad "Machines"
 Sheets("Machines").Protect , 0, , , -1, , , , , , , , , -1, -1, -1
End Sub
 
Terug
Bovenaan Onderaan