Microsoft Excel

Herbers Excel/VBA-Archiv

Zellengesperrt mit VBA übergehen

Betrifft: Zellengesperrt mit VBA übergehen von: Angie
Geschrieben am: 17.08.2004 10:31:20

Hi liebe Leute,

ich habe eine Arbeitsmappe wo die Zellen gesperrt und das Blatt geschütz ist.
Da diese Arbeitsmappe wird von mehrern Leute verwendet, deswegen brauche ich den Schutz auf die Zellen das nichts anderes eigetragen werden kann. Jetzt habe ich aber ein VBA Code wo die Leute in der Urlaubsliste ihren geplanten Urlaub eintragen können indem sie den Bereich makieren und auf den Button drücken(Das dadurch makiert feld wird dann ein blaues "U" eingetragen ). Da aber die Zellen gesperrt sind sag er mir jedesmal
"Die Bold-Eigenschaft des Font-Objektes kann nicht festgelegt werden"
Ist es möglich das man trotz schutz auf die Zellen und Blattschutz NUR mit dem VBA-Code etwas in eine Zelle eintragen kann, und dass bei Tastatureingabe der Schutz angezeigt wird ??? Ich weiß das hört sich ziemlich Kompliziert an, aber vielleich hat jemand von euch Rat wie ich dieses Problem beheben kann.

Hier noch der VBA Code mit was das eingetragen wird.

Sub U_Urlaub_geplant()
    Dim Zelle As Range
    For Each Zelle In Selection
    If Zelle.Locked = False Then Zelle.Value = "U"
    Zelle.Font.Bold = True
    Zelle.Font.ColorIndex = 5
    Next Zelle
End Sub


Liebe Grüße und vielen Dank im vorraus für Eure hilfe

Eure Angie
  


Betrifft: AW: Zellengesperrt mit VBA übergehen von: Andi
Geschrieben am: 17.08.2004 10:33:57

Hi,

application.unprotect "xyz"
deinCode
application.protect "xyz"

Gruß Andi


  


Betrifft: AW: Zellengesperrt mit VBA übergehen von: Angie
Geschrieben am: 17.08.2004 10:50:09

Hi Andy,

habe den Code wie folgt eingegeben

Sub U_Urlaub_geplant()
    Application.Unprotect "U"
    Dim Zelle As Range
    For Each Zelle In Selection
    If Zelle.Locked = False Then Zelle.Value = "U"
    Zelle.Font.Bold = True
    Zelle.Font.ColorIndex = 5
    Application.Protect "U"
    Next Zelle
End Sub


Hoffe das ist so richtig. Habe die Zellen gesperrt und das Blatt geschützt. Dann kommt die Fehlermeldung " Laufzeitfehler 438 " Objekt unterstützt dies Eigenschaft oder Methode nicht. Was für ein fehler ist das jetzt ??? Also leider klappt es nicht.
Schade !!! :,-(

Dank für DEine hilfe aber leider geht das nicht.

Liebe Grüße Deine Angie


  


Betrifft: AW: Zellengesperrt mit VBA übergehen von: Holger
Geschrieben am: 17.08.2004 10:59:34

Hallo Angie
Wenn ich das richtig sehe hast "U" für deinen Urlaub genommen dort muß aber das Kennwort rein vom Blattschutz. Oder ist es ein Zufall das Dein Blattschutzname das U ist.???
Holger


  


Betrifft: AW: Zellengesperrt mit VBA übergehen von: Hans W. Herber
Geschrieben am: 17.08.2004 11:00:03

Hallo Angie,

nicht:
Application.Protect

sondern.
ActiveSheet.Protect

besser an den Anfang des Codes nach der Variablendeklaration folgende Zeile:
ActiveSheet.Protect "MeinPasswort", UserInterfaceOnly:=True

Gruss hans


  


Betrifft: AW: Zellengesperrt mit VBA übergehen von: ChrisL
Geschrieben am: 17.08.2004 11:02:53

Hi Angie


Sub U_Urlaub_geplant()
    Dim Zelle As Range
    
    ActiveSheet.Unprotect Password:="Passwort"
    For Each Zelle In Selection
    If Zelle.Locked = False Then Zelle.Value = "U"
    Zelle.Font.Bold = True
    Zelle.Font.ColorIndex = 5
    Next Zelle
    ActiveSheet.Protect Password:="Passwort"
End Sub




Aber mal was anderes. Ist der Code richtig? D.h. soll die Schriftart auch bei geschützten Zellen umgestellt werden oder doch eher so?

Sub U_Urlaub_geplant()
    Dim Zelle As Range
    
    ActiveSheet.Unprotect Password:="Passwort"

    For Each Zelle In Selection
    If Zelle.Locked = False Then 
        Zelle.Value = "U"
        Zelle.Font.Bold = True
        Zelle.Font.ColorIndex = 5
    End If
    Next Zelle

    ActiveSheet.Protect Password:="Passwort"
End Sub




Gruss
Chris


  


Betrifft: Klappt ja so super aber !!! von: Angie
Geschrieben am: 17.08.2004 11:44:50

Hi ihr Lieben,

das klappt ja so super nur das Problem ist wenn ich die Zelle ( Unter Zelle Formatieren Zelle "gesperrt") habe trägt er mir nichts ein und das ist ja gerade das verzwickte. Er soll ja das "U" eintragen mit Blattschutz und einzelnen Zellenschutz.
Ganz lieb für eure Lösungen aber leider klappt das nicht so wie ich es gerne gehabt hätte. Er trägt das nur ein wenn kein Schutz auf der einzelnen Zelle ist.
Nochmals vielen Dank was würde ich ohne eure hilfe machen. ;-)

Liebe Grüße Eure Angie


  


Betrifft: AW: Klappt ja so super aber !!! von: ChrisL
Geschrieben am: 17.08.2004 12:54:49

Hi Angie

Vielleicht so...

Sub U_Urlaub_geplant()
    Dim Zelle As Range
    
    ActiveSheet.Unprotect Password:="Passwort"

    For Each Zelle In Selection
        Zelle.Value = "U"
        Zelle.Font.Bold = True
        Zelle.Font.ColorIndex = 5
    Next Zelle

    ActiveSheet.Protect Password:="Passwort"
End Sub



Gruss
Chris


  


Betrifft: AW: Klappt ja so super aber !!! von: ChrisL
Geschrieben am: 17.08.2004 12:57:05

Korrektur...

Sub U_Urlaub_geplant()
ActiveSheet.Unprotect Password:="Passwort"

With Selection
    .Value = "U"
    .Font.Bold = True
    .Font.ColorIndex = 5
End With

ActiveSheet.Protect Password:="Passwort"
End Sub



  


Betrifft: AW: Zellengesperrt mit VBA übergehen von: Angie
Geschrieben am: 17.08.2004 12:22:49

Hi Chris,
ja die farbe sollte auch umgestellt werden auf blau.
Darum kam ja auch immer die erste Fehlermeldung über bolt und folt Methode.
Naja, hoffe das hilft Dir weiter. Ist die Formel nicht richtig ???

Liebe Grüße Angie


  


Betrifft: AW: Zellengesperrt mit VBA übergehen von: EtoPHG
Geschrieben am: 17.08.2004 13:01:21

Angie,

Hier ist der richtige Code,
Ersetze "passwort" mit Deinem Passwort
und es sollte funktionieren.

Sub U_Urlaub_geplant()
    Dim Zelle As Range
    ActiveSheet.Unprotect "passwort"
    For Each Zelle In Selection
        If Zelle.Locked = True Then
            Zelle.Value = "U"
            Zelle.Font.Bold = True
            Zelle.Font.ColorIndex = 5
        End If
    Next Zelle
    ActiveSheet.Protect "passwort", UserInterfaceOnly:=True
End Sub


Gruss Hansueli


  


Betrifft: Danke genau so wollte ich es habe Supi von: Angie
Geschrieben am: 17.08.2004 13:13:29

Danke dir Hansueli,
so klappt es Prima. ;-) weiter so.

Liebe Grüße Angie