Vba excel 97 comparer date aujourd'hui

Fermé
okavangou - 19 févr. 2009 à 18:52
 okavangou - 19 févr. 2009 à 20:05
Bonjour,

je suis totalement débutant en vba et je souhaiterai programmer 2 choses

1) comparer la date insérée manuellement dans une cellule ( la cellule C1) avec la date système (aujourd'hui)
en fonction du resultat (inférieure) j'édite un message (msgbox) ou (égale) j'execute 2 petites macros

2) sur un tableau avec 24 colonnes et 521 lignes (petite base sur excel de R2 à R522 ) , j'efface le contenu de quelques cellules (17 sur 24 de A jusqu'à X) pour chaque ligne ou la cellule X est nulle (égale à zéro)

Les cellules dont le contenu doit etre effacé se trouvant dans les colonnes de A à F , de H à J , de M à N , de P à Q et de S à T ( sur ma petite macro , j'ai choisi arbitraiment les lignes 8 et 12 comme exemple)

Ci dessous , ma première ébauche mais qui , bien sur , ne marche pas :-) ...

Sub MISEAJOUR()
'
' MISEAJOUR Macro
'
If TODAY > "C1" Then
MsgBox "Entrez la date du jour pour effacer les dossiers déjà soldés"
Else
Call EFFACECONTENU
Call TRIERRESTEALIVRER
End If
End Sub


Sub EFFACECONTENU()
' efface le contenu des cellules
Range("A8:F8").Select
Selection.ClearContents
Range("H8:J8").Select
Selection.ClearContents
Range("M8:N8").Select
Selection.ClearContents
Range("P8:Q8").Select
Selection.ClearContents
Range("S8:T8").Select
Selection.ClearContents
Range("A12:F12").Select
Selection.ClearContents
Range("H12:J12").Select
Selection.ClearContents
Range("M12:N12").Select
Selection.ClearContents
Range("P12:Q12").Select
Selection.ClearContents
Range("S12:T12").Select
Selection.ClearContents
End Sub

Sub TRIERRESTEALIVRER()
'
' Trie la colonne X Macro
'
Range("X3").Select
Range("A2:X522").Sort Key1:=Range("X3"), Order1:=xlDescending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Application.CommandBars("Stop Recording").Visible = False
End Sub


Si quelqu'un avait des idées pour m'aider ...

Merci d'avance

Okavangou
A voir également:

2 réponses

lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
19 févr. 2009 à 19:44
Bonjour,
Première idée..
TODAY() c'est une fonction en anglais pour les cellules d'une feuille.
En code Macros (français et anglais) c'est Date.
If Date > [C1] Then ...
A+
0
merci lermite

je vais déjà essayer ça

a +
0