Bonjour,
Actuellement je fais des essais pour récupérer une valeur précise d'une ligne d'un DataGridView.
Voici le code dans le formulaire pour appeler la procédure :
Voici la procédure de la reprise automatique
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Private Sub ComboBoxReference_Validated(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBoxReference.Validated referenceSKF = ComboBoxReference.Text RepriseAutomatiqueValeurSKF() MsgBox(DInt) End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Public DInt as Single Public Sub RepriseAutomatiqueValeurSKF() DInt = RepriseAutoDInt() End Sub
Et le code de la reprise automatique :
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
18
19
20
21
22
23
24
25
26 Private Function RepriseAutoDInt() As Single Dim a As String Dim i As Integer Dim dtreprise As New DataTable Dim dtgv As New DataGridView i = 0 dtreprise = OuvrirCatalogueSKF() ' lit un fichier .txt et créer une DtataTable de celui-ci que je retourne dans cette celle-ci dtgv.DataSource = dtreprise Do a = CStr(dtgv.Item(0, i).Value) 'Erreur If referenceSKF <> a Then i = i + 1 End If If i = dtgv.RowCount() Then Exit Do End If Loop Until referenceSKF = a Return CSng(dtgv.Item(1, (i)).Value) 'De ce fait je soupçonne la même Erreur ici End Function'Erreur =
L'exception ArgumentOutOfRangeExeption n'a pas été gérée par le controle utilisateur
L'index était hors limites. Il ne doit pas être négatif et doit être inférieur à la taille de la collection.
Nom du paramètre : Index
De mes recherche j'en ai déduit que le DataGridView ne se créé pas ou mal, les colonnes/lignes/valeurs ne sont pas présentent, donc pas d'index...
Peut être le problème est différent de ce que je suppose, mais je ne sais comment le régler. Y a t'il une autre méthode pour récupérer la valeur en utilisant directement le DataTable ?
Cordialement,
Bacube
Partager