Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Excel Arbeitsblatt zeitgesteuert löschen





Frage

Hallo, wie kann man ein Excel Arbeitblatt in eriner Excel Mappe zeitgesteuert löschen? Ich bin in VBA eine absolute Niete! ;-P Vielleicht kann mir hier jemand helfen. Der Ablauf soll folgendermaßen ablaufen: Sobald das hinterlegte Datum erreicht oder überschritten ist soll das Arbeitsblatt unwiderruflich gelöscht werden. Eventuell sinnvoll wäre auch ein gleichzeitiges Abspeichern der Arbeitsmappe. Vielen Dank im Voraus Micico

Antwort 1 von Beverly

Hi,

beim Schließen der Arbeitsmappe wird geprüft, ob das Datum in Tabelle1 A2 < Heute ist. Wenn ja, wird Tabelle2 gelöscht. Arbeitsmappe wird gespeichert.

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Dim inTabellen As Integer
    For inTabellen = ThisWorkbook.Sheets.Count To 1 Step -1
        If Worksheets(inTabellen).Name = "Tabelle2" Then
            If Date >= Worksheets("Tabelle1").Range("A2") Then
                Worksheets("Tabelle2").Delete
                Exit For
            End If
        End If
    Next inTabellen
    ThisWorkbook.Save
End Sub


Bis später,
Karin

Antwort 2 von micico

Hallo Karin,
zunächst mal vielen Dank für Deine Hilfe. Hab das Programm auch gleich mal ausprobiert und es funzt auch recht gut... Wenn ich jedoch auf beenden klicke kommt noch ein Hinweis, der mich dabei gewaltig stört: "In den Arbeitsblättern, die Sie löschen möchten können Daten vorhanden sein. Um die Daten endgültig zu löschen drücken Sie entfernen". Also das Ganze sollte kommentarlos abgehen. Weiterhin sollte die Option Sicherungskopie nicht nutzbar sein.
Hintergrund meiner Idee ist es, dass ich die Exceldatei an Andere weitergebe und diese nur bis zu dem Stichtag nutzbar sein soll. Es wäre daher sinnvoll die Abfrage beim öffnen auszuführen damit man nicht mit der Sicherungskopie weiterarbeiten kann.

Gruß Micico

Antwort 3 von Beverly

Hi,

schau mal auf die HP von Hajo Ziplies Hajo-Excel Seite "VBA-Beispiele", Unterseite "nur mit Makros". Dort findest du mehrere Beispiel, die dir sicher weiterhelfen.

Bis später,
Karin

Antwort 4 von schnallgonz

Hi Micico
ich mische mich nur kurz ein:
welchen Weg Du auch wählst, verabschiede Dich von dem Gedanken, eine Exceldatei wirksam schützen zu können.
Was ist, wenn Deine Dateiempfänger eine Kopie der Datei haben (es soll ja Leute geben, die regelmäßig Backups machen)?
Jeder, der sich einigermaßen mit VBA auskennt, kann alle Schutz- oder Löschoptionen abklemmen.

gruß
schnallgonz

Antwort 5 von micico

Hi Schnallgonz,

Du hast sicherlich recht, aber die Leute (meist Handwerker) sind meist schon happy, wenn sie eine Excel-Datei öffnen können... Nix gegen Handwerker, bin selbst einer von den Jungs.... Ich habe mir halt die Mühe gemacht mit Excel eine Preisliste zu erstellen, mit der z.B. ein Bäcker komplette Angebote Heizungsanlagen innerhalb weniger Minuten erstellen kann.... (einschl. Händler-Preisupdate etc.) und das mit einer Präzision, die an Nachkalkulationen mit nur kleinen Abweichungen herankommt. Einige Mitbewerber sind schon an mich herangetreten und wollten ein Demoprogramm haben. Ich hab das einmal gemacht mit dem Erfolg, dass der "Mitbewerber" mir gesagt hat es wäre nix für ihn und später hab ich herausgefunden, dass er mit dem Ding sehr oft arbeitet... Deshalb der "KLEINE" Sicherheitstrick...

Gruss Micico

Antwort 6 von fedjo

Hallo Micico,
einfach eine Zeile in den Code von Karin einfügen.

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim inTabellen As Integer
For inTabellen = ThisWorkbook.Sheets.Count To 1 Step -1
Zitat:
Application.DisplayAlerts = False
If Worksheets(inTabellen).Name = "Tabelle2" Then
If Date >= Worksheets("Tabelle1").Range("A2") Then

Gruß
fedjo

Antwort 7 von micico

Supi, soweit so gut.... Kann man denn sie Überprüfung auch beim öffnen der Datei durchführen lassen???

Gruss Micico

Antwort 8 von Beverly

Hi,

schreibe den Code nicht in das WorkbookBefore_Close sondern in das Workbook_Open Ereignis. Bedenke aber, dass dies alles nur dann funktioniert, wenn die Makros beim Starten der Arbeitsmappe auch wirklich aktiviert werden.

Bi später,
Karin

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: