Aide pour une macro Excel 2007

Résolu
chevalux1 Messages postés 47 Date d'inscription   Statut Membre Dernière intervention   -  
coco_rico Messages postés 32 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Pouvez vous m'aider à réaliser une macro SVP ?
La macro ne me parait pas très compliquée mais je n'y connais rien du tout!
Il s'agit d'afficher uniquement (peut être dans une autre feuille du classeur) les lignes qui répondent aux conditions suivantes:
- La ligne doit afficher "P" dans la colonne R
- La ligne doit avoir une date > 1 ans dans la colonne U
- Si ces deux conditions sont réunies il faut vérifier que dans la colonne X, la ligne soit vide ou que la date inscrite si elle n'est pas vide, soit supérieure à 1 an.

Merci d'avance pour votre aide.
A voir également:

28 réponses

coco_rico Messages postés 32 Date d'inscription   Statut Membre Dernière intervention  
 
essaie le code ci-dessous, je ne pense pas que ce soit un format de date, sais tu la ligne où ça ne marche pas?

i = 2
k = 2
While i < 6000
If Cells(i, 18) = "P" Then
If Cells(i, 21) <> "" Then
If DateDiff("yyyy", Cells(i, 21), Date) > 1 Then
If (Cells(i, 24) = "" Or DateDiff("yyyy", Cells(i, 24), Date) > 1) Then
For j = 1 To 40
Sheets("Ponctuel à relancer").Cells(k, j) = Sheets("SAV").Cells(i, j)
Next j
k = k + 1
End If
End If
End If
End If
i = i + 1
Wend
0
chevalux1 Messages postés 47 Date d'inscription   Statut Membre Dernière intervention  
 
Non je ne sais pas la ligne ou ça ne marche pas, comment savoir?
Avec ce dernier code rien ne se passe.
0
coco_rico Messages postés 32 Date d'inscription   Statut Membre Dernière intervention  
 
envoie moi une partie de ton fichier, je verrai là où ça cloche parce chez moi ça marche.

quoc.bach@alico.com
0
chevalux1 Messages postés 47 Date d'inscription   Statut Membre Dernière intervention  
 
Je crois que j'aicompris l'erreur!
ça provient du >1 concernant la date.
Il me reporterait que les lignes avec les dates en 2007.
Or moi mes dates pour le moment sont encore en 2008 mais la différence avec aujourd'hui est supérieur à 365 jours.
Ce sont ces lignes que je veux recopier. J'ai mis >= 1 et il me remonte bien les lignes ou il ya 2008.
Peut est-ce sur les jours ou les mois qu'il faut poser les conditions ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
coco_rico Messages postés 32 Date d'inscription   Statut Membre Dernière intervention  
 
non, >= c'est bon, ce sera toutes les dates il y a au moins 1 an, je pense que c'est ça que tu veux?
0
chevalux1 Messages postés 47 Date d'inscription   Statut Membre Dernière intervention  
 
Le problème est qu'il me copie aussi une date comme 03/12/2008 or ça fait moins d'un an.
0
coco_rico Messages postés 32 Date d'inscription   Statut Membre Dernière intervention  
 
effectivement, je viens de tester. alors dans la fonction datediff, remplace "yyyy" par "d", et 1 par 365 au niveau du test.
0
chevalux1 Messages postés 47 Date d'inscription   Statut Membre Dernière intervention  
 
C'est parfait!
Merci mille fois pour ton aide!
C'était tout bête finalement!
Merci encore!
0
coco_rico Messages postés 32 Date d'inscription   Statut Membre Dernière intervention  
 
hihi ... effectivement, l'informatique c'est somme toute assez bête, il suffit de savoir dire au programme exactement ce qu'on veut ...

bonne continuation...
0