• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Excel datum Controleren en verwijderen

Status
Niet open voor verdere reacties.

Carloj

Gebruiker
Lid geworden
9 feb 2015
Berichten
115
In mij vorige vraag heb ik niet echt echt het antwoord gekregen wat is zocht dus ga ik het opsplitsen in kleine vragen.
Zo heb ik nu deze code :
Code:
Sub Knop1_Klikken()
Datum = Range("M5:M24")
If Datum < Date Then
cell.Range("A5:A24", "M5:M24").ClearContents
End If


End Sub

Spreekt denk ik voor zich wat het moet gaan doen.
De code moet kijke of er een datum oud dan vandaag is de de range van M5 tot M24. Is dit het geval dan moet hij deze datums en de naam verwijderen in A5 tot A24 en M5 tot M24.
 
Laatst bewerkt:
Veegt wel alles uit indien er een datum kleiner dan vandaag in zit:

Code:
Sub Knop1_Klikken()
 For Each dt In Range("M5:M24")
  If dt < Date Then
   cell.Range("A5:A24", "M5:M24").ClearContents
  End If
 Next
End Sub
 
Hij geeft bij mij een foutmelding :
Object niet gevonden
cell.Range("A5:A24", "M5:M24").ClearContents
 
Laat die cell eens weg voor Range.

Code:
Range("A5:A24,M5:M24").ClearContents
 
Laatst bewerkt:
Het lijkt nu wel of de code kijkt naar de datums en als die een datum heeft gevonden die nieuwe is dan vandaag de rest meteen verwijderd. Er blijft van de 5 datums die nieuwer zijn (en dus zoude moeten blijven staan) maar 1 over. En ook verwijderd die nu alle gegeven tussen A en M dit is eigenlijk ook niet de bedoeling omdat hier een aantal formules in staan.
Toch alvast bedankt voor je hulp!
 
Range("A5:A24,M5:M24").ClearContents

Die regel heb ik er niet ingezet, ik heb u nog gewaarschuwd dat alles zou verwijderd worden.

Zet eens in je bestand wat je nu echt wanneer wil bereiken.
 
Test deze dan eens:

Code:
Sub Oude_datums()
 For Each dt In Range("E4:E" & Range("E" & Rows.Count).End(xlUp).Row)
  If dt <> "" And dt < Date Then
   Rows(dt.Row).EntireRow.ClearContents
  End If
 Next
End Sub
 
Hij verwijder nu de correcte datum(top!) alleen neemt hij nog steeds de formules mee van de verwijderde datums.
 
Zo dan:
Code:
Sub Oude_datums()
 For Each dt In Range("E4:E" & Range("E" & Rows.Count).End(xlUp).Row)
  If dt <> "" And dt < Date Then
   Cells(dt.Row, 1).ClearContents
   Cells(dt.Row, 5).ClearContents
  End If
 Next
End Sub
 
Perfect! precies wat ik bedoelde, heel erg bedankt!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan