Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
380to384
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
380to384
380to384
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Mit Checkbox Zelle sperren und entsperren

Mit Checkbox Zelle sperren und entsperren
16.02.2004 11:09:26
Thomas
Hallo,
ich möchte gerne eine Zelle oder Zellbereich sperren, wenn eine Checkbox aktiviert ist. wie macht man das ?
Danke im voraus
Thomas

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mit Checkbox Zelle sperren und entsperren
16.02.2004 11:23:48
Galenzo
Hallo Thomas,
du hast also eine Userform "Userform1" mit 'ner Checkbox "Checkbox1" drauf.
Und du möchtest beispielsweise Zelle "A1" in "Tabelle1" sperren/entsperren:


Private Sub CheckBox1_Click()
    With Sheets("Tabelle1")
        .Unprotect "passwort"
        .Range("A1").Locked = IIf(CheckBox1, TrueFalse)
        .Protect "passwort"
    End With
End Sub
Private Sub UserForm_initialize()
    CheckBox1 = Sheets("Tabelle1").Range("A1").Locked
End Sub

Die zweite Prozedur (Userform_Initialize) bewirkt, daß beim anzeigen der Userform entsprechend dem Gesperrt/frei-Status der Zelle A1 schonma das Häkchen gesetzt wird bzw. nicht - finde ich sinnvoll...
mfg
Anzeige
AW: Mit Checkbox Zelle sperren und entsperren
16.02.2004 11:46:43
Thomas
Hallo,
hab ich vielleicht falsch erklärt...
Ich möchte vor jeder Spalte einer Liste eine Checkbox habe (hab keine UserForm). Erst wenn die checkbox angeklickt wurde, wird die Spalte zur Eingaeb freigegeben. Wird der hacken wieder entfertn soll die Spalte wieder blockiert sein
Gruß
Thomas
AW: Mit Checkbox Zelle sperren und entsperren
16.02.2004 12:29:43
Galenzo
Hallo nochmal,
das mit den vielen Checkboxen scheint mir ungeeignet - an der Vorgehensweise ändert sich jedoch nix. Du mußt dann das Ereignis Checkbox_Click genauso zuweisen.

Wenn du sehr viele Zeilen hast, ist mein Vorschlag die Verwendung einer "Ankreuz"-Spalte.
Ich habe da z.B. die Spalte A verwendet und diese Auf Scriftart "Marlett" formatiert.
Du weist nun noch dem WOrksheet_SelectionChange-Ereignis des Tabellenblates diese Prozedur zu:


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim As Range
    Set c = Range("A1:A100")
    Set Target = Intersect(c, Target)
    If Not Target Is Nothing Then
        ActiveSheet.Unprotect ""
        For Each In Target.Cells
            With c
                .Font.Name = "Marlett"
                .Font.Size = 10
                If .Value = "r" Then
                    .Value = "a"
                    .Font.ColorIndex = 50
                    Cells(.Row, "D").Locked = False
                Else
                    .Value = "r"
                    .Font.ColorIndex = 3
                    Cells(.Row, "D").Locked = True
                End If
            End With
        Next
        ActiveSheet.Protect ""
    End If
End Sub

Diese bewirkt, daß bei einem Klick auf die ersten 100 Zeilen in Spalte A ein rotes Kreuz bzw. ein grünes Häkchen gesetzt wird, entsprechend dem Zustand "Gesperrt/frei" der (beispielsweise) Spalte "D", der damit auch gleich gesetzt wird.
Ich hoffe das hilft dir mehr...
mfg
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige