Bonsoir,

J'ai un soucis dans le parcours d'un objet dataTable
Je vous présente le code.

Je dois chercher dans une base de données Access et afficher des lignes dont les dates sont comprises entre deux dates spécifiées...

J'ai récupérée les deux dates "tempdebut et tempfin"

Le bout de code devant le faire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
 
        NumLigneBD = 0
 
        While ((ObjetDataTable.Rows(NumLigneBD).Item("HeureCapture").CompareTo(tempdebut) < 0) AndAlso (NumLigneBD < ObjetDataTable.Rows.Count - 1))
            NumLigneBD += 1
        End While
 
        While ((ObjetDataTable.Rows(NumLigneBD).Item("HeureCapture").CompareTo(tempfin) < 0) AndAlso (NumLigneBD < ObjetDataTable.Rows.Count - 1))
            'MsgBox(ObjetDataTable.Rows.Item(NumLigneBD).Item("HeureCapture"))
            'MsgBox(tempfin)
            ListContenuArchive.Items.Add(NumLigneBD)
            ListContenuArchive.Items.Add(ObjetDataTable.Rows(NumLigneBD).Item("NumCapture"))
            ListContenuArchive.Items.Add(ObjetDataTable.Rows(NumLigneBD).Item("HeureCapture").ToShortDateString & "    " & ObjetDataTable.Rows(NumLigneBD).Item("HeureCapture").ToLongTimeString)
            NumLigneBD += 1
            'MsgBox(NumLigneBD)
        End While
J'ai fait ces affichages ci-dessous just pour repérer mon erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
ListContenuArchive.Items.Add(NumLigneBD)
            ListContenuArchive.Items.Add(ObjetDataTable.Rows(NumLigneBD).Item("NumCapture"))
Je me rends compte que le NumCapture affiché qui est la clé primaire de ma table s'incrémente en fonction l'incrément de NumLigneBD pour les premières lignes et après il repart à une valeur inférieure que je ne comprends pas.

Je remarque aussi que ObjetDataTable.Rows(0).Item("NumCapture") n'est pas le premier élément de ma base de données.