begin process at 2008 07 20 13:09:31
1 213 223 membres
140 nouveaux aujourd'hui
14 166 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Probléme Macro [ Divers / Débutants ] (NgXCherche)

Probléme Macro le 10/05/2008 21:35:15

NgXCherche
SAlUt
Youpiii j'ai un probléme .....

Alors Voila la macro qui pose probléme :
Sub blablabla()
Dim simulation As Date
Dim MaDate As Date
Dim lig As Double


simulation = "11/05/2008 10:12"
MaDate = ActiveCell.Value

For lig = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row To 1 Step -1
Select Case Cells(lig, 1).Value
Case DateDiff("n", simulation, MaDate) < 0
Rows(lig).Delete
End Select
Next lig

End Sub

Donc en faite le principe c que je réalise une différence entre 2 dates qui sont dans des variable : simulation et MaDate. Dans la variable MaDate j'ai voulu mettre la cellule active du programme.


But :Je voudrai que lorsque la différence entre les deux date est < 0 alors je supprime la ligne SINON je la garde (la macro ne supprime pas la ligne)



Voila je ne sais pas pourquoi mais ma macro se compile correctement mais ne fonctionne pas c'est à dire qu'elle ne supprime pas les lignes lorsque la différences entre les 2 date est < 0.

Si je n'ai pas été compréhensible dite le moi jm efforcerai d'être encore plus clair ^^
Merci de bien vouloir m'aider .
JD+

Re : Probléme Macro le 10/05/2008 22:54:50

mortalino
Membre Club
salut,

humm vite corrigé mais pas testé :

Dim simulation As Date
Dim MaDate As Date
Dim lig As Integer


simulation = "11/05/2008 10:12"

For lig = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row To 1 Step -1
    MaDate = CDate(Cells(lig, 1).Value)
    If DateDiff("n", simulation, MaDate) < 0 Then Rows(lig).Delete
Next lig

Attention, n = minutes, donc dès que t'auras 1 minute d'écart minimum en négatif, ta ligne est supprimée

@++
___________________________________
( Forum exclusivement Office & VBA )

Re : Probléme Macro le 10/05/2008 23:15:20

jeanjeandada
Ok merci ca marche,

Question :MaDate = CDate(Cells(lig, 1).Value)                le CDATE signifie au programme que la cellule est sous format Date ?

Sauf qu'il y a un probléme (que jviens de remarqué en faisant des essais) que lorsqu'une cellule est vide, la macro supprime la ligne respective ....

Est ce que tu connaitrai un code pour dire de passer à la cellule suivante ?

Elseif Select Case Cells(lig, 1).Value = "" then ...


Merci Encore


Re : Probléme Macro le 10/05/2008 23:26:13

mortalino
Membre Club
non, regarde dans l'aide (F1), CDATE (comme d'autres : Ctype) force la conversion de la valeur en paramètre au format Date.
Il faut faire attention avec les dates, pour éviter les confusions de formats (entre français jj/mm/aaaa et anglo-saxon mm/dd/yyyy).
Les jours et mois sont inversés

pour ton problème, rajoute une condition, ainsi, les 2 doivent se vérifier pour la suppression :
If DateDiff("n", simulation, MaDate) < 0 And Cells(lig, 1).Value <> vbnullstring Then Rows(lig).Delete

@++
___________________________________
( Forum exclusivement Office & VBA )

Re : Probléme Macro le 10/05/2008 23:48:29

jeanjeandada
OK merci je t'en remercie

Je viens d'intaller l'aide pour pouvoir comprendre d'aurénavent tout seul !!

allez ++
Ty


Re : Probléme Macro le 10/05/2008 23:51:03

mortalino
Membre Club
Pense aussi au F2, c'est super important (liste des méthodes, propriétés et évènements de tous les objets)
Tout les développeurs s'en servent, personne ne connait tout par coeur

Bonne continuation

@++
___________________________________
( Forum exclusivement Office & VBA )


Classé sous : macro, probléme, simulation, madate, lig

Participer à cet échange

Pub



Appels d'offres

Dessins techniques
Budget : 60€
Animation Flash - Doma...
Budget : 370€
Application flash medi...
Budget : 1 000€

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS