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

Beveiligde cellen filteren... (lukt me niet)

Status
Niet open voor verdere reacties.

pelley

Gebruiker
Lid geworden
25 nov 2004
Berichten
19
Hoihoi,

Ik heb een excel-bestand met meerdere tabbladen. Op het eerste blad moet alles ingevoerd worden, op de andere tabbladen komen met formules de verschillende gegevens van het eerste tabblad te staan. Het eerste tabblad is dus voor de vrije invoer, de andere tabbladen heb ik beveiligd (bij Extra, Beveiliging, Blad beveiligen).

Voorbeeld van een lijst:
Last name...........Functie.....kenteken
Aalst, van der J........Inh...........00-FV-XX
ONWAAR..................0
ONWAAR..................0
Azarkani, M..............Inh............00-BP-XX
ONWAAR...................0
Baur, G...................Prev.Fm.Tech..00-PL-XX

Nu wil ik de rijen waar de waarde 0 is niet zien. Dit kan heel eenvoudig met Data, Filter, Autofilter. Alleen... deze functie werkt niet wanneer je het werkblad beveiligd hebt. Ook niet als je de titelrij niet beveiligd. :confused:

Iemand enig idee hoe je kunt filteren of er anders -op een makkelijke manier- voor kunt zorgen dat je de rijen met waarde 0 bij functie niet ziet?
Voorwaarde = beveiligd werkblad!


Alvast bedankt, Pelley

::Overzicht is voor een ander, vandaar de 'makkelijke manier' ;)
 
Zet de beveiliging via een macro aan i.p.v. via het menu.
Je kunt dan een extra optie meegeven (niet mogelijk via menu) waarbij autofilter wel mogelijk blijft.
Hieronder voorbeeldje.

Sub BeveiligingBladAan()
'Beveiliging actief blad aanzetten
Range("A1").Select
ActiveSheet.Protect password:="hier eventueel jouw wachtwoord", DrawingObjects:=True, Contents:=True, _
Scenarios:=True, UserInterfaceOnly:=True
End Sub

De extra optie UserInterfaceOnly:=True zorgt ervoor dat je autofilter nog wel kunt gebruiken.
 
Hoi Pelley,

Oplossing is niet beveiligen.

Voorkomen dat de cellen gewijzigd kunnen worden:

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If Range("AA1") <> "Zee" Then
If not Intersect(Target,Range("A5:K999")) is nothing then
If Target.rows.count +Target.Columns.Count >2 then
ActiveCell.Select
Else
Range("AB1").Formula=Target.Formula
End if
End if
End If
End Sub

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Range("AA1") <> "Zee" Then
If not Intersect(Target,Range("A5:K999")) is nothing then
Target.Formula=Range("AB1").formula
End if
End If
End sub

Kijk maar of je er wat mee kunt.

Jeroen
 
Hoi Jeroen,

Ben enthousiast met je macro's bezig. Helaas bleek de oplossing van Jan de boel wel te beveiligen (ga ik dus zeker in een ander report gebruiken! :) ), maar kon ik alsnog geen selectie maken met autofilter: ik kan wel op het driehoekje klikken, maar de optielijst krijg ik niet te zien.

In de macro's die ik van jou gehad heb, Jeroen, krijg ik
Fout 424 tijdens uitvoering
Object vereist

De fout zit in deze regel:

If Not Intersect(Target, Range("A5:K999")) Is Nothing Then

De macro-beveiliging staat op laag.
Het bestand afsluiten en opstarten heb ik ook al geprobeerd.

:o Het zal wel iets heel simpels zijn...

Laat je het me even weten? Thnx, Pelley
 
HoiHoi,

Ik ben al een tijd met dit probleem aan het vechten... maar heb (helaas) nog geen oplossing gevonden. Op welke manier (lees: met welke macro) ik de beveiliging ook aan zet, daarna is het niet meer mogelijk om te sorteren (op welke manier dan ook - via autofilter of gewoon via sorteren).

:confused:

Ik heb het vermoeden dat het gewoon niet mogelijk is, maar als je een idee hebt, dan hoor ik dat graag!

Alvast bedankt, Pelley
 
Ik zit eerlijk gezegd met precies hetzelfde probleem. Waar ik ook zoek op internet, iedereen komt met dezelfde optie: UserInterfaceOnly:=True
Maar net als bij pelley werkt dat bij mij ook niet.

Zijn er wellicht andere instellingen die de zaak dan werkend zouden moeten krijgen?

Zou iemand misschien een klein excel-bestandje kunnen sturen waarin deze optie wel werkt?

Ik werk trouwens - helaas - nog met excel 2000, bij latere versies is dit veel gemakkelijker heb ik al gemerkt.

Alvast bedankt!
 
Aangepaste macro's die moet werken:
============================
Sub BeveiligingBladAan()
'Beveiliging actief blad aanzetten
Range("A1").Select
ActiveSheet.Protect password:="hier eventueel jouw wachtwoord", UserInterfaceOnly:=True
ActiveSheet.EnableAutoFilter = True
End Sub
===========================
oplossing geldt ook voor excel 2000
Succes,
NuMan
 
Laatst bewerkt:
Ik heb nu alleen nog één klein vervolgvraagje:

Je beveiligt op deze manier een blad en slaat 'm op en sluit 'm af. Als je daarna je bestand weer opent, functioneren de autofilters niet. Dat is eenvoudig op te lossen door de macro opnieuw uit te voeren, daarna doen ze het wel gewoon, maar is er een oplossing te vinden dat dit al standaard mogelijk is als je het bestand opent?

Bij voorbaat, nogmaals, hartelijk dank.
 
volgende macro is een van de oplossingen:
=================================
Private Sub Workbook_Open()
Sheets("jouw sheet").Select
Range("A1").Select
ActiveSheet.Protect password:="hier eventueel jouw wachtwoord", UserInterfaceOnly:=True
ActiveSheet.EnableAutoFilter = True
End Sub
==================================
 
Beste,

Ik heb hetzelfde probleem, maar ik heb totaal geen kaas gegeten van macro's. Ik heb wat rondgesnuffeld op internet, maar ik vind niet hoe ik deze macro moet invoeren...

Het moet gelden voor 2 sjablonen, ik zal er één bijsluiten. In pricipe moet alleen in het eerste tabblad gesorteerd kunnen worden, als ik het goed heb, volgende de anderen vanzelf wel (VERT.ZOEKEN en INDIRECT).

Als iemand me kan uitleggen wat ik concreet moet doen met de code die hieronder staat, en de functies ervan kort kan toelichten, zou ik hem zeer dankbaar zijn.

Groetjes

Het bestand: http://users.telenet.be/RAFCRIK/Ledenlijst%20-%20Tak.xltx
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan