Thema Datum  Von Nutzer Rating
Antwort
Rot Worksheet_Change & Range User Cell Protection
02.02.2018 11:10:06 Snip
NotSolved
02.02.2018 17:25:05 Mackie
NotSolved

Ansicht des Beitrags:
Von:
Snip
Datum:
02.02.2018 11:10:06
Views:
1123
Rating: Antwort:
  Ja
Thema:
Worksheet_Change & Range User Cell Protection
ich habe eine Arbeitsmappe mit Worksheet_Change Macros.
 
Das erste Code schutzt jede Zeile, die einen Text von User bekommt, also durch direkte Änderung
 
Leider sind die letzten Codes anders... Wenn man was in spalte B oder C schreibt wird dann entsprechen in Spalte F bis I Datum und Benutzer eingetragen. Es verursacht, dass diese Spalten ungeschützt bleiben.
 
Ich bräuchte eine Lösung, die nur diese Spalten F bis I von Benutzer schutzen wird, jedoch weiterhin für Makro-Änderungen ungeschützt bleiben
 
 
Main Protection Code:
1
2
3
4
5
6
7
8
Application.EnableEvents = True
        ActiveSheet.Unprotect Password:="Athens"
        For Each cel In Target
            If cel.Value <> "" Then
                cel.Locked = True
                End If
        Next cel
        ActiveSheet.Protect Password:="Athens"
 
Whole Code:
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
  Private Sub Worksheet_Change(ByVal Target As Range)
    Dim rC As Range
    Dim P2 As Range
    Dim cel As Range
     
     
        Application.EnableEvents = True
        ActiveSheet.Unprotect Password:="Athens"
        For Each cel In Target
            If cel.Value <> "" Then
                cel.Locked = True
                End If
        Next cel
        ActiveSheet.Protect Password:="Athens"
     
    If Not Intersect(Target, Range("B:B")) Is Nothing Then
        Application.EnableEvents = False
        For Each rC In Target.Cells
            Range("F" & rC.Row) = Now()
            Range("G" & rC.Row) = Environ("username")
        Next rC
        Application.EnableEvents = True
    ElseIf Not Intersect(Target, Range("C:C")) Is Nothing Then
        Application.EnableEvents = False
        For Each P2 In Target.Cells
            Range("H" & P2.Row) = Now()
            Range("I" & P2.Row) = Environ("username")
        Next P2
            Application.EnableEvents = True
    End If
End Sub
 
 

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Worksheet_Change & Range User Cell Protection
02.02.2018 11:10:06 Snip
NotSolved
02.02.2018 17:25:05 Mackie
NotSolved