Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
448to452
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
448to452
448to452
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Visible = xlSheetHidden für alle Worksheets?

Visible = xlSheetHidden für alle Worksheets?
02.07.2004 20:54:50
Danny
Hallo allerseits,
ich möchte gerne die Tabellen meiner Arbeitsmappe vor Benutzern verstecken, welche die Mappe öffnen und keine Makros eingeschaltet haben. Meine Idee war: Beim Schließen werden alle Tabellen per Makro ausgeblendet. Beim Öffnen werden alle wieder eingeblendet. Wer die Arbeitsmappe öffnet, aber Makros deaktiviert, sieht nichts. (Ich weiss, ein relativ trivialer Schutz, aber für meine Anwender hätte es gereicht.)
Ich hatte mir Folgendes gedacht:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim objWS As Worksheet
For Each objWS In ThisWorkbook.Worksheets
objWS.Visible = xlSheetHidden
Next
ThisWorkbook.Save
End Sub


Private Sub Workbook_Open()
Dim objWS As Worksheet
For Each objWS In ThisWorkbook.Worksheets
objWS.Visible = xlSheetVisible
Next objWS
End Sub

Problem: Das letzte Worksheet in der Arbeitsmappe lässt sich nicht auf xlSheetHidden stellen (Fehler 1004: Methode 'Visible' für Objekt '_Worksheet' fehlgeschlagen).
Irgendetwas habe ich prinzipiell falsch verstanden. Wer kann mir helfen?
Danke im voraus für eure Hilfe!
Danny

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Visible = xlSheetHidden für alle Worksheets?
02.07.2004 20:58:37
DieterB
Hallo Dany,
wenn Du die Blätter vor den Anwendern verstecken willst,
warum blendest Du sie beim Öffnen ein?
Punkt 2: wahrscheinlich muss ein Blatt immer da sein, nimm einfach ein leeres, dann klappt's auch mit'n Anwender :-))))
Gruß
DieterB
AW: Visible = xlSheetHidden für alle Worksheets?
Sebastian
Das habe ich auch schon mal gemacht.
Erzeuge eine Tabelle, die nichts enthält außer dem Hinweis, dass die tabelle mit "Makros aktivieren" geöffnet werden muss.
Beim Schließen werden alle bis auf diese tabelle versteckt.
Wird die Datei ohne Makro aktivieren gestartet, sieht der Anwender nur dieses Blatt.
(Sinnigerweise ohne Tabreiter, Scrollbalken etc.
Wird die Datei mit Makro aktivieren gestartet wird die Hinweistabelle versteckt, nachdem alle anderen vorgeholt wurden.
Anzeige
AW: Visible = xlSheetHidden für alle Worksheets?
ransi
hallo danny
dieter hat recht. 1 sheet muss immer visible sein.
kannstdu ganz leicht testen wenn du das letzte sichtbare sheet
über format - blatt - ausblenden unsichtbar machen willst.
wenn du die blätter mit xlsheethidden versteckst, kriegst du sie mit
format - blatt- einblendeen leicht wieder.
nimmst du allerdings xlsheetveryhidden kriegst du sie nur mit vba wieder zu sehen.
ransi
AW: Visible = xlSheetHidden für alle Worksheets?
02.07.2004 21:22:54
DieterB
Hallo ransi,
hab ich was verpasst?
Warum will er, wenn er die Blätter verstecken will
sie beim öffnen einblenden?
Gruß
DieterB
AW: Visible = xlSheetHidden für alle Worksheets?
ransi
hallo dieter
ich hab ihn so verstanden:
keine aktivierten makros dann auch keine visible sheets.
Kurzversion.
korrigier mich bitte danny wenn ich mich geirrt habe.
ransi
Anzeige
AW: Visible = xlSheetHidden für alle Worksheets?
02.07.2004 21:30:54
DieterB
O.K.
hab's 'n 3. mal gelesen.
Stimmt: keine Makros, keine Blätter
Gruß
DieterB
AW: Visible = xlSheetHidden für alle Worksheets?
Danny
ransi, DieterB: Ja, genau so war das gemeint.
Der Tip mit der letzten leeren Seite von Sebastian ist natürlich eine pragmatische Idee, das werde ich so machen.
Danke allerseits!
Danny D
gern geschehen o.T.
02.07.2004 21:49:39
DieterB
.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige