Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema Werkzeug
BildScreenshot zu Werkzeug Werkzeug-Seite mit Beispielarbeitsmappe aufrufen

Tabelle schützen und schließen

Betrifft: Tabelle schützen und schließen von: Oliver B.
Geschrieben am: 20.09.2014 11:01:17

Hallo

Ein Anflug von Verzweiflung.

Was soll der Code unten bewirken:
Die Tabelle wird geschlossen, klick auf X oben rechts.
Die Seite wird dann gewechselt auf die Eröffnungsseite,
(Tabelle 2) zu der, wenn die Tabelle neu gestartet wird.
Alle Einstellungen werden zurückgesetzt.
Ein Eintrag wird noch gemacht und dann soll das Tabellenblatt
geschützt, gesichert und die Tabelle geschlossen werden.

Was passiert:
Egal was ich mache, wenn die Tabelle neu geöffnet wird,
vor dem Aktivieren der Makros, lassen sich alle Zellen
anklicken (aber nur die entsperrten Zellen lassen sich
eintragen, dass ist O.K.) Nach dem Aktivieren verhält
sich alles korrekt, nur die entsperrten Zellen lassen
sich anklicken.

Was sollte sich ändern:
Beim Schließen der Tabelle müsste doch laut VBA
das Tabellenblatt 2 geschützt sein, und sich nur
die entsperrten Zellen anklicken lassen?
Vielleicht gibt es einen Denkfehler ...
Schaut mal drauf.
Danke.


Private Sub Workbook_BeforeClose(Cancel As Boolean)


    Sheets("Namen und Datum eintragen").Select
    Range("C16").Select
    
    Application.ScreenUpdating = False
    ActiveSheet.Unprotect Password:="@q"

    With Sheets(2).Cells(1, 3)
      .Value = "Makros bitte aktivieren!"
      .Font.ColorIndex = 3
    End With

    Worksheets(2).Select
    ActiveSheet.Protect Password:="@q", DrawingObjects:=True, Contents:=True, Scenarios:=True
    ActiveSheet.EnableSelection = xlUnlockedCells
    

    Application.CutCopyMode = True
    Application.CellDragAndDrop = True
    Application.ScreenUpdating = True
    
    
End Sub

Noch eine kleine Frage:
Wenn ich den Vollbildmodus zurücksetzen will,
Application.DisplayFullScreen = False
verschwindet der gesamte obere Teil der Tabelle
einschließlich der Fenster-Werkzeuge wie X zum Schließen.
Beim nächsten Öffnen der Tabelle ist der Vollbildmodus aufgehoben.
Soweit korrekt.
Wird jedoch das Schließen der Tabelle abgebrochen, bleibt die
fehlerhafte Seite und lässt sich nicht mehr schließen, weil der
wichtigste Teil oben fehlt. Falls jemand das Problem kennt,
wäre ich für eine Info dankbar.

Oliver B.

  

Betrifft: AW: Tabelle schützen und schließen von: Matze Matthias
Geschrieben am: 20.09.2014 13:45:41

Hallo Oliver,
kannst du die Datei einstellen oder eine Musterdatei abgeben mit einer Beschreibung was genau passieren soll?
Aus dem was du hier geschrieben hast wird ich nicht schlau.
das hier:

    With Sheets(2).Cells(1, 3)
      .Value = "Makros bitte aktivieren!"
      .Font.ColorIndex = 3
    End With

ist doch überflüssig , oder? denn "OHNE" Makroaktivierung" wird dieser Code esrt gar nicht laufen.

Gruß Matze


  

Betrifft: Tabelle schützen und schließen von: Oliver B.
Geschrieben am: 20.09.2014 14:25:14

Hallo Matze

Mit diesem Eintrag wird die Tabelle vorbereitet, wenn sie wieder neu geöffnet wird,
dann erscheint der Eintrag: Makros bitte aktivieren und der Eintrag verschwindet wieder,
wenn die Makros aktiviert wurden.


Ich würde gern jemanden die Tabelle anschauen lassen,
aber mir fehlt etwas der Mut sie zu veröffentlichen.
Was kann man da tun?

Oliver B.


  

Betrifft: AW: Tabelle schützen und schließen von: Matze Matthias
Geschrieben am: 20.09.2014 13:50:43

Hallo Oliver,
und hierzu:

    Worksheets(2).Select
    ActiveSheet.Protect Password:="@q", DrawingObjects:=True, Contents:=True, Scenarios:=True
    ActiveSheet.EnableSelection = xlUnlockedCells
ist zu sagen, da du das "Private Sub Workbook_BeforeClose(Cancel As Boolean)" verwendest
und dies ist DIREKT in der Tabelle eingebunden, hier vermute ich das es in einer "anderen" Tabelle ist wie das angegebene 2Worksheets(2)

Leg doch in dem Worksheet(2) dieses "Private Sub Workbook_BeforeClose(Cancel As Boolean)" an

Gruß Matze


  

Betrifft: AW: Tabelle schützen und schließen von: Adis
Geschrieben am: 20.09.2014 14:23:57

Hallo

ich glaube ich bin auf einen Fehler gestossen, der einiges erklaeren könnte.
Eine kleine Tücke in der Programmierung, passiert mir auch immer wieder mal.

Dahinter gekommen bin ich weil ich solche Probleme gerne in einer Mappe nachstelle.
Ich nahm ein normales Modulblatt um das Makro zu testen und erhielt eine Fehlermeldung.
Die war völlig korrekt!

Das Sheets(2) war noch gesperrt und wollte in die Celle C3 "Makro aktivieren" schreiben.
Bei gesperrter Zelle ging das nicht! Zum Fehler: -ActiveSheet.Unprotect Password:="@q"-

Bezieht sich konkret auf ein -aktives Blatt-, und somit nicht auf das Worksheet(2)!!
Vorher wird aber dieses Blatt selektiert: Sheets("Namen und Datum eintragen").Select
Entweder Worksheets(2).Select noch oben setzen, oder AktivesSheet umbenennen!

Application.CutCopyMode = True bitte auf False setzen, sonst bleibt der Kopier Modus auf ON.

Gruss Adis


  

Betrifft: AW: Tabelle schützen und schließen von: Oliver B.
Geschrieben am: 20.09.2014 14:37:14

Danke Adis

Das Sheet "Name und Datum eintragen" ist gleichzeitig das Sheet (2).
Sorry - das war nicht zu erkennen. - O.


  

Betrifft: AW: Tabelle schützen und schließen von: Adis
Geschrieben am: 20.09.2014 14:29:57

Nachtrag

ich denke das sich Probleme auch ohne Veröffentlichung lösen lassen.
Bitte erst mal meine Meldung überprüfen ob ich damit richtig liege.
Wenn noch fragen sind machen wir weiter.

Gruss Adis


 

Beiträge aus den Excel-Beispielen zum Thema "Tabelle schützen und schließen"