Frage von Bensemilia, 167

Excel VBA - Zellen nach Datum löschen?

Hallo Liebe Excel - Kenner,

gibt es die Möglichkeit oder einen Code, wo ich Zellen löschen die ich nach Datum und Uhrzeit bestimme?

Bsp: Zelle A1: K30 löschen am 25.03.2016 - 14:00 Uhr

Gruß Manuel

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von Iamiam, Community-Experte für Excel, 97

Zelle A1: K30 löschen am 25.03.2016 - 14:00 Uhr
Das µ muss ja allgemein formuliert sein, sonst macht das keinen Sinn. Also zB jeden Freitag 14:00, wenn die Woche abgelaufen ist (keine WE-Vorausplanung?  GGF ENTSPRECHEND ÄNDERN)

Wenn in A1:E5 Deine Datümer Mo:Fr stehen (wirklich in A1, keine Titelspalten für zB Schicht oder Zeit?), dann (ins Worksheet-Modul, nur Entwurf, Trockenübung):

Sub worksheet_selectionchange()
if Now() > E5 + 0,5833334 then Range("A1:K30").delete Shift:=xltoleft
end sub 'die einzeilige (Merkelsche=alternativlose) if-Variante braucht kein End if


Den üblichen Kladderadatsch für Target etc kannst Du Dir hier sparen.


Das 0,5833334 ist der Zeitwert für 14:00+ und kann vllt auch anders formuliert werden, probier ich jetzt nicht aus

Gibt sicher noch andere brauchbare Ereignis-Makros (Worksheet_activate() ? worksheet_change() ? sowie Max's Workbook_activate(), Workbook_open(), Letztere aber ins Workbook-Modul: funktionieren dann jeweils bei der entsprechenden Aktion, ich probier das aber jetzt ebenfalls nicht aus)

Kommentar von Iamiam ,

danke für den * ! Das ist mir die liebste Rückmeldung ;)

Antwort
von maximilianus7, 95

also auf die uhrzeit kommts nicht an.

du brauchst die sub Workbook_Open() im projektteil diesearbeitsmappe. diese wird immer ausgeführt wenn du xlsm datei öffnest. in dieser prozedur schleifst du über die spalte mit den datumseinträgen (aber rückwärts), überprüfst ob es ein löschkandidat ist (die funktion datediff könnte hilfreich sein) und mit

Rows(i).Delete Shift:=xlUp

wird gelöscht. oder waren es spalten?  

Kommentar von Bensemilia ,

Es waren Spalten

Kommentar von maximilianus7 ,

gut, dann weisst du ja wies geht.

Kommentar von Iamiam ,

achtung: xltoleft, xlleft ist schon belegt für Position von Objekten!

Antwort
von maximilianus7, 96

du solltest genauer beschreiben was dein problem ist. soll was automatisch ablaufen? kannst du VBA?

Kommentar von Bensemilia ,

Hey,

Ich habe immernoch meinen Schichtplan vor Augen und die Kalenderwochen sollen nach jederwiche gelöscht werden.

Somit würde ich gerne in VBA programmieren das excel automatische nach einer Woche eine Kalenderwochen entfernt, damit die Planung weitergehen kann.

VBA Spezialist bin ich nicht aber ich kann es anwenden.

Gruß Manuel

Kommentar von Bensemilia ,

Sprich ich möchte ein Marko an einem bestimmten Tag und Uhrzeit ausführen. 

Antwort
von dkilli, 81

Hallo Manuel,

vielleicht nützt dir dies

https://www.administrator.de/frage/excel-bereich-vba-l%C3%B6schen-50766.html

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten