Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA - Blattschutz

VBA - Blattschutz
04.11.2015 11:31:45
Thomasey
Hallo zusammen,
folegenden Code habe ich in einem Modul stehen.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Unprotect ("123")
If Target.Count > 1 Then Exit Sub
If Not Intersect(Target, Me.Range("D21:M81")) Is Nothing Then
With Me.Cells(Target.Row, 3)
On Error Resume Next
OldRange.Interior.Color = OldColor
On Error GoTo 0
OldColor = .Interior.Color
.Interior.Color = RGB(0, 255, 0)
End With
Set OldRange = Me.Cells(Target.Row, 3)
Else
OldRange.Interior.Color = OldColor
End If
ActiveSheet.Protect ("123")
End Sub
Der Code funktionert soweit, nur obwohl am Ende des Codes "ActiveSheet.Protect ("123")" steht, wird der Blattschutz nicht aktiv.
Hat jemand eine Idee woran das liegt?
Grüße
Thomas

Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - Blattschutz
04.11.2015 11:42:10
Dieter(Drummer)
Hi Thomas,
evtl so: statt:
  • ActiveSheet.Protect ("123")
  • einsetzen:
  • ActiveSheet.Protect Password:="123"

  • Gruß, Dieter(Drummer)

    AW: VBA - Blattschutz
    04.11.2015 11:50:37
    Thomasey
    Hallo Dieter,
    danke für deine Antwort, aber daran lags nicht.
    Grüße
    Thomas

    AW: VBA - Blattschutz
    04.11.2015 12:13:23
    Tino
    Hallo,
    läuft evtl. noch eine anderer Code?
    An diesem Code kann es nicht liegen, wenn dieser ohne Fehler durchläuft!
    Noch besser ein Beispieldatei hochladen!
    Gruß Tino

    Anzeige
    AW: VBA - Blattschutz
    04.11.2015 12:29:10
    Thomasey
    https://www.herber.de/bbs/user/101245.xlsm
    Hallo,
    habe die Beispieldatei hochgeladen.
    Bewegt man sich in den roten Feldern, ist der Blattschutz aktiv, springt man raus, öffnet sich -ungewollt- der Blatschutz.
    Hinsweis: Das Makro in Modul 2 habe ich eingebaut, da ich ohne sonst eine Fehlermeldung erhalte.
    Gruß
    Thomas

    Anzeige
    AW: VBA - Blattschutz
    04.11.2015 12:41:26
    Bernd
    Hi,
    ich bin kein VBA Profi, aber wenn ich Deine verbundenen Zellen aufhebe, funktioniert es bei mir.
    Aber da kann ich leider nicht weiter helfen mit dem Code, es wird sich aber jemand finden.
    mfg Bernd

    AW: VBA - Blattschutz
    04.11.2015 12:44:01
    Tino
    Hallo,
    wegen If Target.Count > 1 Then Exit Sub bleibt dein Blatt ungeschützt.
    Die verbundenen Zellen haben mehr wie eine Zelle daher steigt dein Code aus.
    Versuch mal so (Deinen anderen Code habe ich nicht beachtet)
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Count = 1 Then
    ActiveSheet.Unprotect Password:="123"
    If Not Intersect(Target, Me.Range("D21:M81")) Is Nothing Then
    With Me.Cells(Target.Row, 3)
    On Error Resume Next
    OldRange.Interior.Color = OldColor
    On Error GoTo 0
    OldColor = .Interior.Color
    .Interior.Color = RGB(0, 255, 0)
    End With
    Set OldRange = Me.Cells(Target.Row, 3)
    Else
    OldRange.Interior.Color = OldColor
    End If
    End If
    If Not ActiveSheet.ProtectContents Then _
    ActiveSheet.Protect Password:="123"
    End Sub
    
    Gruß Tino

    Anzeige
    AW: VBA - Blattschutz
    04.11.2015 14:43:07
    Thomasey
    Vielen Dank an alle!
    Funktioniert mit dem Code von Tino.
    Danke!
    ;

    Forumthreads zu verwandten Themen

    Anzeige
    Anzeige
    Entdecke relevante Threads

    Schau dir verwandte Threads basierend auf dem aktuellen Thema an

    Alle relevanten Threads mit Inhaltsvorschau entdecken
    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Entdecke mehr
    Finde genau, was du suchst

    Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

    Suche nach den besten Antworten
    Unsere beliebtesten Threads

    Entdecke unsere meistgeklickten Beiträge in der Google Suche

    Top 100 Threads jetzt ansehen
    Anzeige