Betrifft: Datum abfragen und Werte kopieren
von: Norman
Betrifft: AW: Datum abfragen und Werte kopieren
von: 1714026.html
Geschrieben am: 20.09.2019 08:37:26
Hallo Norman,
muss das unbedingt via VBA sein?
Ausgehend davon, dass das Datum in Spalte A und die Namen in Spalte B stehen, reicht in dem Blatt "Liste" folgende Formel:
=WENN(UND(Daten!B1<>"";Daten!A1>HEUTE()-30);Daten!A1;"")
Betrifft: Als VBA
von: 1714041.html
Private Sub worksheet_activate()
Range("A1:A20").Formula = "=IF(AND(Daten!R[0]C2<>"""",Daten!R[0]C1>TODAY()-30),Daten!R[0]C1,"""" _
)"
End Sub
Private Sub Worksheet_Change(ByVal target As Range)
Dim loeschen As Double
For loeschen = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1
If Cells(loeschen, 1).Value = "" Then
Rows(loeschen).Delete
End If
Next loeschen
End Sub
(Anfänger-"Hauptsache-Es-Klappt"-Code :D )
Betrifft: AW: Als VBA
von: 1714067.html
Geschrieben am: 20.09.2019 11:57:30
Hallo Pierre!
vielen vielen herzlichen Dank für deine zwei Lösungen.
Zu deiner Frage: Ja, es muss leider in VBA sein :( Wäre mir auch lieber, wenn es eine normale Formel auch getan hätte :D
Zum VBA-Code:
Ich hatte vergessen zu sagen, das die Daten immer in der Zukunft sind. Sprich, die "Restlaufzeit" bis zum Datum im Blatt "Daten" wichtig ist. 30Tage oder weniger. Da habe ich mich wohl doof ausgedrückt.
Dennoch gibt es ein kleines Problem, was wohl eventuell auf meine "Erklärung" zurückzuführen ist.
Wenn ich den Code im Blatt "Liste" nun ausführen will, kommt folgende Fehlermeldung:
"Fehler beim Kompilieren: Erwartet: Anweisungsende".
Und hier hört mein VBA Wissen direkt auf :D Mache ich was falsch oder hat sich irgendwo ein Fehler eingeschlichen? Habe im Grunde C&P genutzt :/
Die Namen sind in Spalte A und die Daten, die mit dem Tagesdatum verglichen werden sollen, in Spalte B.
Ich entschuldige mich für meine luckenhafte Erklärung.
Und danke dir vorab für deine Mühe bis jetzt!
Liebe Grüße,
Norman
Betrifft: AW: Als VBA
von: 1714075.html
Private Sub worksheet_activate()
Range("A1:A20").Formula = "=IF(AND(Daten!R[0]C2<>"""",Daten!R[0]C1>TODAY()-1,Daten!R[0]C1
Zu deinem Fehler: Möglicherweise ist der entstanden, weil in meinem zitierten Code ein _ von der Forensoftware eingefügt wurde, der da nicht hingehört. Sorry, darauf habe ich dich nicht hingewiesen.
Betrifft: jetzt aber wirklich...
von: 1714077.html
Geschrieben am: 20.09.2019 12:48:20
Ach man -.-
tut mir Leid, wieder was vergessen. Du hast ja die Namen/Daten andersrum.
Also:
Der richtige Code jetzt nochmal (diesmal stimmt er auch)
Private Sub worksheet_activate()
Range("A1:A20").Formula = "=IF(AND(Daten!R[0]C1<>"""",Daten!R[0]C2>TODAY()-1,Daten!R[0]C2< _
TODAY()+30),Daten!R[0]C2,"""")"
End Sub