Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema SpinButton
BildScreenshot zu SpinButton SpinButton-Seite mit Beispielarbeitsmappe aufrufen

Zellschutz unter Bedingt | Herbers Excel-Forum


Betrifft: Zellschutz unter Bedingt von: Heinz H
Geschrieben am: 13.01.2010 12:52:22

Hallo Leute

Ich hätte gerne einen Zellschutz wenn

=WENN(ISTFEHLER(SVERWEIS(A6;$W$64:$X$81;2;0));"";SVERWEIS(A6;$W$64:$X$81;2;0))
Diese Formel steht in L6:L35

ZB A6;$W$64:$X$81 - dann würde die Zellen A6:O6 gesperrt gehören.

Könnte mir bitte jemand helfen ?

Gruß
Heinz Holzmann

  

Betrifft: AW: Zellschutz unter Bedingt von: Reinhard
Geschrieben am: 13.01.2010 13:02:41

Hallo Heinz,

:::ZB A6;$W$64:$X$81 - dann würde die Zellen A6:O6 gesperrt gehören.:::

Wann sollen A6:O6 gesperrt werden?

Gruß
Reinhard


  

Betrifft: AW: Zellschutz unter Bedingt von: Heinz H
Geschrieben am: 13.01.2010 13:11:34

Mahlzeit Reinhard

Ich habe in W64:W81 das Datum für Feiertage stehen.

In A6:A35 steht das Datum eines Kalenders.

Wenn nun zB. A10 = W75; dann würde der Bereich A10:O10 gesperrt gehören.

Gruß
Heinz


  

Betrifft: AW: Zellschutz unter Bedingt von: welga
Geschrieben am: 13.01.2010 14:13:18

Hallo,

vielleicht hilft dir das hier aus dem Archiv weiter:

Einfach ins Tabellenblatt kopieren:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim i As Long
   If Not Intersect(Target, Range("A6:o35")) Is Nothing Then
      Application.EnableEvents = False
            For i = 1 To 15
            
                If Cells(Target.Row, i) <> "" Then Cells(Target.Row, 12).Select
            Next i
      Application.EnableEvents = True
   End If
End Sub



  

Betrifft: AW: Zellschutz unter Bedingt von: hary
Geschrieben am: 13.01.2010 14:35:06

Hallo Heinz
hab mal das Beispiel von Gestern genommen. Zellschutz wird gesetzt, wenn SpalteA leer oder in SpalteL ein Wort steht das in SpalteX einmal vorkommt.

Sub Blattschutz()
 Dim i As Integer
   ActiveSheet.Unprotect
     For i = 6 To 35
'----hinter or zählt ob Eintragung in L einmal in SpalteX vorkommt
      If Cells(i, 1).Value = "" Or WorksheetFunction.CountIf(Range("X64:X81"), Cells(i, 12). _
Value) = 1 Then
        Range("A" & i & ":P" & i).Locked = True
      End If
    Next
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

teste mal.
gruss hary


  

Betrifft: ersetz bitte P durch O owT. von: hary
Geschrieben am: 13.01.2010 14:37:10

.


  

Betrifft: AW: Erstmals Danke - Noch ein Fehler von: Heinz H
Geschrieben am: 13.01.2010 16:15:49

Hallo

Erstmals Danke an Reinhard welga und Hary, für Eure Unterstützung und Lösungen.

Bei dem Makro von Hary funktioniert es erstmals so wie gewünscht.

Ein Problem. Wenn zB. die Zelle A4:O4 gesperrt waren und ich einen Monat hochzähle, bleiben die Zellen A4:O4 gesperrt.

Es müsste glaube ich alles rückgesetzt werden und dann das Makro wieder laufen lassen.

Gruß
Heinz

Sub Blattschutz()
 Dim i As Integer
   ActiveSheet.Unprotect ' Password:="woody-6962"
     For i = 6 To 35
'----hinter or zählt ob Eintragung in L einmal in SpalteX vorkommt
      If Cells(i, 1).Value = "" Or WorksheetFunction.CountIf(Range("X64:X81"), Cells(i, 12). _
Value) = 1 Then
        Range("A" & i & ":O" & i).Locked = True
      End If
    Next
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub



  

Betrifft: AW: Erstmals Danke - Noch ein Fehler von: Heinz H
Geschrieben am: 13.01.2010 16:20:09

Habe es gefunden

     Range("A" & i & ":O" & i).Locked = False
Nochmals Danke an alle. Besonders an Hary

Gruß
Heinz


Beiträge aus den Excel-Beispielen zum Thema "Zellschutz unter Bedingt"