Aide pour une macro Excel 2007
Résolu/Fermé
chevalux1
Messages postés
47
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
9 juillet 2010
-
18 juin 2009 à 13:59
coco_rico Messages postés 32 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 19 juin 2009 - 19 juin 2009 à 14:33
coco_rico Messages postés 32 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 19 juin 2009 - 19 juin 2009 à 14:33
A voir également:
- Aide pour une macro Excel 2007
- Liste déroulante excel - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Formule excel - Guide
- Déplacer une colonne excel - Guide
- Save as pdf office 2007 - Télécharger - Bureautique
28 réponses
coco_rico
Messages postés
32
Date d'inscription
mercredi 17 juin 2009
Statut
Membre
Dernière intervention
19 juin 2009
19 juin 2009 à 11:48
19 juin 2009 à 11:48
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
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
chevalux1
Messages postés
47
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
9 juillet 2010
19 juin 2009 à 12:04
19 juin 2009 à 12:04
Non je ne sais pas la ligne ou ça ne marche pas, comment savoir?
Avec ce dernier code rien ne se passe.
Avec ce dernier code rien ne se passe.
coco_rico
Messages postés
32
Date d'inscription
mercredi 17 juin 2009
Statut
Membre
Dernière intervention
19 juin 2009
19 juin 2009 à 13:45
19 juin 2009 à 13:45
envoie moi une partie de ton fichier, je verrai là où ça cloche parce chez moi ça marche.
quoc.bach@alico.com
quoc.bach@alico.com
chevalux1
Messages postés
47
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
9 juillet 2010
19 juin 2009 à 13:59
19 juin 2009 à 13:59
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 ?
ç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 ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
coco_rico
Messages postés
32
Date d'inscription
mercredi 17 juin 2009
Statut
Membre
Dernière intervention
19 juin 2009
19 juin 2009 à 14:04
19 juin 2009 à 14:04
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?
chevalux1
Messages postés
47
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
9 juillet 2010
19 juin 2009 à 14:12
19 juin 2009 à 14:12
Le problème est qu'il me copie aussi une date comme 03/12/2008 or ça fait moins d'un an.
coco_rico
Messages postés
32
Date d'inscription
mercredi 17 juin 2009
Statut
Membre
Dernière intervention
19 juin 2009
19 juin 2009 à 14:23
19 juin 2009 à 14:23
effectivement, je viens de tester. alors dans la fonction datediff, remplace "yyyy" par "d", et 1 par 365 au niveau du test.
chevalux1
Messages postés
47
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
9 juillet 2010
19 juin 2009 à 14:30
19 juin 2009 à 14:30
C'est parfait!
Merci mille fois pour ton aide!
C'était tout bête finalement!
Merci encore!
Merci mille fois pour ton aide!
C'était tout bête finalement!
Merci encore!
coco_rico
Messages postés
32
Date d'inscription
mercredi 17 juin 2009
Statut
Membre
Dernière intervention
19 juin 2009
19 juin 2009 à 14:33
19 juin 2009 à 14:33
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...
bonne continuation...