[Code] Excel Makro Blatt sperren

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von juppwatis, 12. Juli 2009 .

  1. 12. Juli 2009
    Excel Makro Blatt sperren

    Hallo zusammen,

    ich versuche gerade ein Makro zu machen, bekomme es aber leider nicht ganz hin.
    Und zwar ist das Blatt nicht geschützt. Wenn man jetzt aber nen Button klickt, dann trägt er die aktuelle Uhrzeit in die aktive Zelle ein und sperrt das ganze Blatt, so dass man nirgends mehr was von Hand eintragen kann. Man kann nur in jede andere Zelle wieder die Zeit per Button eintragen lassen.
    Jedoch will ich auch, dass man einfach mal ein Buchstabe (welcher für andere Dinge steht) eintragen kann. Das geht jedoch nicht, weil durch den Buttonklick das ganze Blatt gesperrt ist außer eben für den Button.

    Wie kann ich das umgehen oder ändern? Hier der Code des Buttons:

    Code:
    Private Sub CommandButton1_Click()
    On Error Resume Next
     If ActiveCell.Column >= 4 And ActiveCell.Column <= 9 Then
     If ActiveCell.Value = "" Then
     ActiveSheet.Unprotect Password:="asalzeit"
     ActiveCell.Value = Now
     ActiveCell.NumberFormat = "hh:mm:ss"
     ActiveSheet.Protect Password:="asalzeit"
     Else
     MsgBox "In der Zelle befindet sich bereits eine Uhrzeit:" & vbCr & _
     Format(ActiveCell.Value, "hh:mm"), vbInformation
     End If
     Else
     MsgBox "Bitte setzen Sie den Cursor in die Spalte D, E, F, G, H oder I!", vbInformation
     End If
    End Sub
    
    LG
     
  2. 12. Juli 2009
    AW: Excel Makro Blatt sperren

    Entfern einfach diese zwei Zeilen, dann wird es nicht mehr gesperrt (könnte man aber auch von selbst drauf kommen ):

    Code:
    ActiveSheet.Unprotect Password:="asalzeit"
    ActiveSheet.Protect Password:="asalzeit"
    
    Mfg Rushh0ur
     
  3. 12. Juli 2009
    AW: Excel Makro Blatt sperren

    ja das weiss ich auch, dass sie dann nicht mehr gesperrt werdne. aber das sollen sie, damit man das eingetragene nicht mehr aendern kann - sollte auch logisch sein?!
     
  4. 12. Juli 2009
    AW: Excel Makro Blatt sperren

    Wenn ich das jetzt richtig verstanden habe willst du nicht das komplette Blatt sperren, sondern nur einen bestimmten Bereich. Falls nicht erklähre bitte nochmal genau was du eigentlich erreichen willst.
     
  5. 12. Juli 2009
    AW: Excel Makro Blatt sperren

    ja ich will immer den bereich sperren, in den ich ueber den Button schon was eingetragen habe. die anderen zeilen brauchen noch nicht gesperrt sein.
     
  6. 12. Juli 2009
    AW: Excel Makro Blatt sperren

    Achso dann hab ich dich verstanden ....

    Ein möglichkeit wäre die Beschreibbarkeit durch die Eigenschaft Locked zu setzen:

    Code:
    ActiveSheet.Unprotect Password:="asalzeit"
     
    Range("A1:Z9999").Locked = False
    Range("B1:B10").Locked = True
     
    ActiveSheet.Protect Password:="asalzeit"
    
    Mfg Rushh0ur
     
  7. 13. Juli 2009
    AW: Excel Makro Blatt sperren

    Probiere es doch mit einer Frage - soll die Zeit eingetragen werden? Ja Nein Vielleicht?

    Code:
    Private Sub CommandButton1_Click()
    On Error Resume Next
     If ActiveCell.Column >= 4 And ActiveCell.Column <= 9 Then
     If ActiveCell.Value = "" Then
     If MsgBox("Möchten Sie die Zeit eintragen, dann klicken Sie auf 'JA' für einen Buchstaben auf 'NEIN'", vbYesNo) = vbYes Then
     ActiveSheet.Unprotect Password:="asalzeit"
     ActiveCell.Value = Now
     ActiveCell.NumberFormat = "hh:mm:ss"
     ActiveSheet.Protect Password:="asalzeit"
     Else
     ActiveSheet.Unprotect Password:="asalzeit"
     ActiveCell.Value = InputBox("Buchstabe")
     ActiveSheet.Protect Password:="asalzeit"
     End If
     Else
     MsgBox "In der Zelle befindet sich bereits eine Uhrzeit:" & vbCr & _
     Format(ActiveCell.Value, "hh:mm"), vbInformation
     End If
     Else
     MsgBox "Bitte setzen Sie den Cursor in die Spalte D, E, F, G, H oder I!", vbInformation
     End If
    End Sub
    
    Das ganze könnte man dann noch mit einer Liste der zulässigen Buchstaben ergänzen
    Fertig
     
  8. 13. Juli 2009
    AW: Excel Makro Blatt sperren

    Oder du machst via Inputbox ne Abfrage nach dem Passwort um das Blatt zu entsperren
     
  9. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.