Ich habe dieses Blatt, wo ich Advanced Filter verwenden, um Informationen in einem anderen Blatt in meiner Arbeitsmappe zu suchen.Excel: erweiterte Filter mit geschütztem Blatt
Darüber hinaus möchte ich Blatt zu schützen, weil ich einige Formeln auf Zellen haben, die Menschen nicht ändern können, aber ich habe auch Zellen, die der Benutzer mit einigen Informationen kommen sollte, dann habe ich diese Zellen bereits als gesperrt
Das Problem ist, wenn ich versuche, meine Advanced Filter laufen zu lassen, wenn ich meine „Filter“ klicken: Sie unten sehen können. Ich erhalte eine Fehlermeldung, die besagt:
Erweiterter Filter kann nicht im geschützten Blatt ausgeführt werden.
So assoziiert ich diesen Code auf meine Schaltfläche "Filter":
Private Sub Filtrar_Click()
Dim wks As Worksheet
For Each wks In ActiveWorkbook.Worksheets
wks.Unprotect "Password"
Call LimparAntes
wks.Protect "Password", UserInterfaceOnly:=True
Next
End Sub
Die LimparAntes Unter ist die Routine, die Advanced Filter ruft, aber ich habe immer noch den gleichen Fehler, so bin ich in Zweifel. Der Code ist unten:
Sub LimparAntes()
'
' LimparAntes Macro
'
'
Dim Lastrow As Long
Lastrow = Sheets("AUX").Range("A" & rows.Count).End(xlUp).Row
Sheets("AUX").Range("A1:K" & Lastrow).AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Sheets("CONSULTA").Range("D34:I35"), CopyToRange:=Sheets("CONSULTA").Range("B40:K40"), Unique:= _
False
Sheets("CONSULTA").Range("F37").Select
End Sub
Ist das der richtige Weg, das zu tun? Ich habe viele Nachforschungen angestellt, aber ich konnte niemanden mit dem gleichen Problem mit Advanced Filter finden, da ich nicht einmal weiß, ob es möglich ist, das zu erreichen, was ich möchte.
Entsperrt Zellen sind, na ja, * entsperrt *, wenn das Blatt geschützt ist. Wenn der Benutzer NICHT in der Lage sein soll, die Formeln zu manipulieren, müssen diese Zellen gesperrt sein. Was macht 'LimparAntes'? –
@ Mat'sMug Entschuldigung, das habe ich schon korrigiert. Ich habe Zellen, die für den Benutzer entsperrt werden müssen, kann den Wert dort ändern. 'LimparAntes' ist der Name des Subs, der meinen erweiterten Filter aufruft, um nach meinen Kriterien zu suchen. Ich habe die Frage auch mit seinem Code bearbeitet. – paulinhax
Ist das * Arbeitsbuch * ebenfalls geschützt? –