Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
804to808
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
804to808
804to808
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Blattschutz-Autofilter, Excel 2000 und 2003

Blattschutz-Autofilter, Excel 2000 und 2003
27.09.2006 20:15:21
Kornelia
Hallo zusammen,
ich habe eine Arbeitsmappe mit derzeit folgendem Makro:

Private Sub Workbook_Open()
Dim objWs As Worksheet
Dim appVersion
appVersion = Val(Application.Version)
For Each objWs In Me.Worksheets
With objWs
If Not .AutoFilterMode Then .UsedRange.Cells(1, 1).AutoFilter
#If appVersion > 9 Then
.Protect userInterfaceOnly:=True, AllowFiltering:=True
#Else
.EnableAutoFilter = True
.Protect userInterfaceOnly:=True
#End If
End With
Next
End Sub

Mein Problem besteht darin, dass ich noch VBA-Code benötige, der veranlasst, dass beim Ablauf des Makros für die Blätter der Blattschutz mit Kennwort aufgehoben und nach Ablauf wieder gesetzt wird. Bislang wird bei diesem o.a. Makro beim Ablauf das Kennwort abgefragt. Alle Blätter besitzen dasselbe Kennwort.
Desweiteren habe ich das Problem, dass Excel 2000 sich an dem Eintrag "AllowFiltering:=True" aufhängt. Obwohl die IF-Anweisung drin ist, bleibt Excel 2000 an der Zeile hängen und springt nicht weiter.
Wer kann mir bitte hier weiterhelfen?
Danke und Gruss
Kornelia

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Blattschutz-Autofilter, Excel 2000 und 2003
27.09.2006 20:38:06
Ali
Hi,

Private Sub Workbook_Open()
Dim objWs As Worksheet
For Each objWs In Me.Worksheets
With objWs
.Unprotect Password:="DeinPasswort"
If Not .AutoFilterMode Then .UsedRange.Cells(1, 1).AutoFilter
.EnableAutoFilter = True
.Protect Password:="DeinPasswort", UserInterfaceOnly:=True
End With
Next
End Sub

Die bedingte Kompilierung ist nicht nötig.
mfg Ali
AW: Blattschutz-Autofilter, Excel 2000 und 2003
27.09.2006 20:58:55
EtoPHG
Hallo Kornelia,
was heisst... dass Excel 2000 sich an dem Eintrag "AllowFiltering:=True" aufhängt. ?
Gemäss dem Conditional Compiling (das m.E. nötig ist, da Excel 2000 den AllowFilitering paramter NICHT kennt) darf der Code bei Excel 2000 doch gar nicht durchlaufen werden.
Jedenfalls läuft dieser Code auf meinem EXCEL 2000 SP-3 engl. klaglos:
Option Explicit

Private Sub Workbook_Open()
Dim objWs As Worksheet
Dim appVersion
appVersion = Val(Application.Version)
For Each objWs In Me.Worksheets
With objWs
.Unprotect password:="TestPWD"
If Not .AutoFilterMode Then .UsedRange.Cells(1, 1).AutoFilter
#If appVersion > 9 Then
.Protect password:="TestPWD", userInterfaceOnly:=True, AllowFiltering:=True
#Else
.EnableAutoFilter = True
.Protect password:="TestPWD", userInterfaceOnly:=True
#End If
End With
Next
End Sub

Gruss Hansueli
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige