Collapse column

Beiträge anzeigen

Diese Sektion erlaubt es dir alle Beiträge dieses Mitglieds zu sehen. Beachte, dass du nur solche Beiträge sehen kannst, zu denen du auch Zugriffsrechte hast.


Nachrichten - proach1995

Seiten: [1]
1
Excel / Office 2010: VBA: Wenn sich Wert ändert, dann Zellen löschen
« am: Januar 17, 2018, 08:54:06 Vormittag »
Hallo liebe Gemeinde
dies ist mein erster Post hier und ich bin leider völliger Excel Anfänger, also habt etwas nachsehen ;D

Ich habe in einer Excel liste (Version 2010) in Zelle C2 die Funktion =Kalenderwoche(Heute();1), diese ändert den Wert automatisch. Nun möchte ich ein Makro erstellen, dass die Werte in den Zellen B24:E45 automatisch löscht, sobald sich dieser Wert in C2 ändert.

Es handelt sich um eine Teilnehmerliste für den Sport, die wöchentlich ausgefüllt werden soll und um "Leichen" zu vermeiden einmal wöchentlich, optimalerweise am Samstag, gelöscht werden soll.

Das komplette Arbeitsblatt soll zur Bearbeitung gesperrt werden. Ausnahme hiervon und zur Bearbeitung freigegeben sind die Zellen (B24:E45) & (C18:E20) & (C14:E16) & (C12:E12), falls das für das Makro von Interesse ist. In den Zellen (D24:D45) befindet sich eine Dropdownliste, die entweder auf den Standartwert ( - ) zurückgestellt werden soll, oder eben die Auswahl wird gelöscht und die Zelle bleibt "leer", die Liste soll aber als Auswahlmöglichkeit erhalten bleiben.


Bisher habe ich folgenden Code:

Private Sub Workbook_Open()
'Zelle AX! darf auf keine Fall manuell überschrieben werden
With Sheets("Tabelle1")
'Tabellenname anpassen
    If .Range("AX1").Value <> .Range("C2").Value Then
        If MsgBox("Alte Daten wirklich löschen?", vbYesNo) = 6 Then
            .Range("B24:E45").ClearContents
        End If
    End If
    .Range("AX1").Value = .Range("C2").Value
End With
End Sub

Allerdings ist hier die Sperrung zur Bearbeitung nicht berücksichtigt, genauso wenig wie die Dropdownliste.

Ich habe die Datei mal angehängt, damit man einen Eindruck bekommt.


Vielen Dank schonmal! :)

Seiten: [1]