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

Forumthread: Bei "1" in "B:B" Zellschutz für ganze Zeile

Bei "1" in "B:B" Zellschutz für ganze Zeile
05.03.2009 09:09:49
Frank
Hallo!
Ich möchte einige Zeilen schützen. Leider wird diese Formatierung nach einer Sortierung per Makro oft wieder aufgehoben. Meine Idee war nun die Zeilen per VBA zu schützen. Bei allen betreffenden Zeilen steht in Spalte "B:B" eine 1.
Wie würdet Ihr das machen?
Kann mir jemand bei der Codezeilen helfen?
Gruß Frank
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bei "1" in "B:B" Zellschutz für ganze Zeile
05.03.2009 10:21:02
Tino
Hallo,
versuche es mal hiermit.
Es wird die letzte Spalte für eine Formel verwendet die zum Schluss wieder gelöscht wird.
Dies hat den Vorteil, dass Makro ist auch bei sehr großen Zellbereichen noch sehr schnell.
Sub SchutzZeile()
Dim Bereich As Range

With Application
 .ScreenUpdating = False
 .EnableEvents = False
    
    With Worksheets("Tabelle1")
        Set Bereich = .Range("B1", .Cells(.Rows.Count, 2).End(xlUp))
        Set Bereich = Bereich.Offset(0, .Columns.Count - Bereich.Column)
    
        .Cells.EntireRow.Locked = False
         Bereich.FormulaR1C1 = "=IF(RC2=1,0,"""")"
                
                If Application.WorksheetFunction.CountIf(Bereich, 0) > 0 Then
                 Bereich.SpecialCells(xlCellTypeFormulas, 1).EntireRow.Locked = True
                End If
        .Columns(.Columns.Count).Delete
    End With 'Worksheets("Tabelle1") 
 
 .ScreenUpdating = True
 .EnableEvents = True
End With 'Application 
End Sub


Gruß Tino

Anzeige
Danke Danke Danke!
05.03.2009 12:15:20
Frank
Hallo!
Sorry wegen der späten Rückmeldung.
Das sieht sehr interessant aus. Ich versuche den Code heute abend einzupflegen.
Vielen Dank für die schnelle Hilfe!
Gruß Frank
AW: Bei "1" in "B:B" Zellschutz für ganze Zeile
05.03.2009 13:11:18
robert
hi Tino,
bei mir ist nichts gesperrt, oder habe ich das problem nicht verstanden?
gruß
robert
https://www.herber.de/bbs/user/60005.xls
Anzeige
AW: Bei "1" in "B:B" Zellschutz für ganze Zeile
05.03.2009 15:10:06
Tino
Hallo Robert,
Du musst Deine Tabelle schützen, dies kannst Du auch mit VBA machen. (siehe unten)
Bei Frank ist dies aber bestimmt schon im Sortiermakro mit eingebaut, kann ich aber nicht sagen.
Sub SchutzZeile()
Dim Bereich As Range

With Application
 .ScreenUpdating = False
 .EnableEvents = False
    
    With Worksheets("Tabelle1")
     .Unprotect "xxx" 'Passwort 
        Set Bereich = .Range("B1", .Cells(.Rows.Count, 2).End(xlUp))
        Set Bereich = Bereich.Offset(0, .Columns.Count - Bereich.Column)
    
        .Cells.EntireRow.Locked = False
         Bereich.FormulaR1C1 = "=IF(RC2=1,0,"""")"
                
                If Application.WorksheetFunction.CountIf(Bereich, 0) > 0 Then
                 Bereich.SpecialCells(xlCellTypeFormulas, 1).EntireRow.Locked = True
                End If
        .Columns(.Columns.Count).Delete
      .Protect "xxx" 'Passwort 
    End With 'Worksheets("Tabelle1") 
 
 .ScreenUpdating = True
 .EnableEvents = True
End With 'Application 
End Sub


Gruß Tino

Anzeige
@Tino-danke f.Schutzmitteilung-Ok-owT
05.03.2009 15:22:43
robert
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
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