373 Aufrufe
Gefragt in Tabellenkalkulation von Mitglied (481 Punkte)
Hallo,

lässt sich die Fehlermeldung bei gesperrten Zellen ändern (nach Blattschutz)?

So funktioniert es nicht (: selectionchange ist der falsche Befehl:


Private Sub Worksheet_selectionchange(ByVal Target As Excel.Range)

If (Target.Locked = True) Then MsgBox "Bitte lediglich die Zellen mit gelbem Hintergrund befüllen", vbCritical, "Zellen sind gesperrt"

End Sub

Die Meldung soll nur bei den gesperrten Zellen angezeigt werden.
Das Makro oben zeigt beim draufklicken die MsgBox und nach anschließender Eingabe kommt wieder die Standard - Fehlermeldung.

1 Antwort

0 Punkte
Beantwortet von mixmax Experte (2.2k Punkte)
Du kannst besser das VBA weglassen und beim Blattschutz verbieten geschützte Zellen überhaupt auszuwählen.
(Blatt schützen -> Haken bei "Geschützte Zellen auswählen" entfernen...)

Die Meldung nervt doch sonst nur.
Ansonsten kannst du beim Auswählen einer geschützten Zelle ohne Meldung einfach die auswahl auf eine nicht geschützte Zelle (z.B. in der gleichen Zeile) ändern.

z.B. wenn Spalte E nicht geschützt ist, und bei auswahl einer Zelle in einer anderen Spalte immer die Zelle der gleichen Zeile in Spalte E gewählt werden soll:

[code]Private Sub Worksheet_selectionchange(ByVal Target As Excel.Range)
    If (Target.Locked = True) Then
        Range("$E" & Mid(Target.Address, InStr(Mid(Target.Address, 2), "$") + 1)).Select
    End If
End Sub[/code]
...