Comparer dates

cs_Gendarmette Messages postés 104 Date d'inscription mardi 27 mai 2003 Statut Membre Dernière intervention 14 janvier 2004 - 5 juin 2003 à 10:27
cs_Gendarmette Messages postés 104 Date d'inscription mardi 27 mai 2003 Statut Membre Dernière intervention 14 janvier 2004 - 5 juin 2003 à 11:28
Voici mon code:

'Comparer le contenu de deux ListBox: trouver fichier de même nom et garder le + récent

Private Sub BtComparer_Click()

List3.Clear
Dim nam, nam2 As String
Dim n, m, i, j As Integer
n = List1.ListCount
For i = 0 To n - 1
List1.ListIndex = i
nam = List1.List(i)
m = List2.ListCount
For j = 0 To m - 1
List2.ListIndex = j
nam2 = List2.List(j)
If StrComp(nam, nam2, 1) = 0 And List1.DateLastModified > List2.DateLastModified Then List3.AddItem nam
List1.Delete nam
Else: List3.AddItem nam2
List2.Delete nam
Next j
Next i

End Sub

Evidemment il y a des erreurs dans la syntaxe mais je ne sais pas comment les corriger.
Est-ce que qqn peut m'aider?
Merci!

3 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
5 juin 2003 à 11:11
salut gendarmette, encore avec ta comparaison de dates.....

rassures, moi, j'ai bien posté hier qq chose sur le forum en reponse a ton message........

j'arrive plus a mettre la main dessus !!!!

List1.LastModified

ca me choque, cette propriete n'existe pas.....

sinon, ne met pas de

if ... Then action1
action2


sinon, seule l'action1 est realisée, d'apres le resultat du test.....

voici donc ton code, modifé legerement

Private Sub BtComparer_Click()
    List3.Clear
    Dim nam, nam2 As String
    Dim n, m, i, j As Integer
    n =  List1.ListCount
    For i = 0 To n - 1
        List1.ListIndex = i
        nam = List1.List(i)
        m = List2.ListCount
        For j = 0 To m - 1
            List2.ListIndex = j
            nam2 = List2.List(j)
            If StrComp(nam, nam2, 1) = 0 And List1.DateLastModified > List2.DateLastModified Then
                List3.AddItem nam
                List1.Delete nam
            Else
                List3.AddItem nam2
                List2.Delete nam
        Next j
    Next i
End Sub


By Renfield

[mailto:thomas_reynald@msn.com mailto:thomas_reynald@msn.com]

Aucune touche n'a été blessée lors de la saisie de ce texte.......... ;)
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
5 juin 2003 à 11:18
et la version qui devrais comarer les dates normallement.....

Private Sub BtComparer_Click()
List3.Clear
Dim nam, nam2 As String
Dim n, m, i, j As Integer
n =  List1.ListCount
For i = 0 To n - 1
List1.ListIndex = i
nam = List1.List(i)
m = List2.ListCount
For j = 0 To m - 1
List2.ListIndex = j
nam2 = List2.List(j)
If StrComp(nam, nam2, 1) = 0 And FileDateTime ( List1.list ( list1.listindex))  > FileDateTime ( List2.list ( list2.listindex)) Then
List3.AddItem nam
List1.Delete nam
Else
List3.AddItem nam2
List2.Delete nam
Next j
Next i
End Sub


mais je ne sais pas si FileDateTime renvoie la date de creation , oue de modification des fichiers.....

By Renfield

[mailto:thomas_reynald@msn.com mailto:thomas_reynald@msn.com]

Aucune touche n'a été blessée lors de la saisie de ce texte.......... ;)
0
cs_Gendarmette Messages postés 104 Date d'inscription mardi 27 mai 2003 Statut Membre Dernière intervention 14 janvier 2004
5 juin 2003 à 11:28
Je te rassure, ton code m'a bien aidé hier.
Mais j'ai du modifier mon projet...
Dans ta version qui compare les dates, au moment de
List1.Delete nam ça plante:
Méthode ou membre de données introuvable.
Tu as une solution?
0
Rejoignez-nous