IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Afficher valeur d'un datagridview vers un autre [Débutant]


Sujet :

VB.NET

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2012
    Messages : 46
    Points : 28
    Points
    28
    Par défaut Afficher valeur d'un datagridview vers un autre
    Bonjour à tous,
    je suis actuellement en stage et je bloque sur un bout de code que je dois faire pour un projet que l'entreprise m'a demandé. J'aimerais donc un peu de votre aide.
    Alors voila j'ai 2 datagridview un pour afficher des produit avec leur prix, référence, ect(datagrid_prod) et l'autre pour commander ces meme produits(datagrid_command).
    la 1ere colonne du data_gridcommand est une combobox qui me permet de séléctionner un produit. J'aimerais qu'en fonction du produit que je choisi dans la combobox, le prix de celui ci (qui est contenu dans datagrid_prod) s'affiche dans une colonne de datagrid_command.
    Mais je n'y arrive pas voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
      For i = 0 To dgt_command.RowCount - 2
                For j = 0 To Form4.dgt_prod.RowCount - 2
    'Verifie si le produit est égal a un produit de l'autre datagrid si oui il prend le prix et le met dans le datagrid_command dans la 3eme colonne.
                    If dgv_command.Item(0, i).Value = Form4.dgv_prod.Item(1,j).Value Then
                        dgv_command.Item(2, i).Value = Form4.dgv_prod.Item(3, j).Value
                    End If
                Next
            Next
    Mais sa ne marche pas rien ne s'affiche dans le datagrid.
    Je pense que cela pourrais etre causé par une mauvaise comparaison au niveau des datagrid mais je ne vois pas comment faire autrement peut etre avec un while pour faire une meilleure recherche ?
    Un peu d'aide serais le bien venu merci.

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2012
    Messages : 46
    Points : 28
    Points
    28
    Par défaut
    Personne ?
    Bon j'ai éssayer avec un while mais le problème c'est que sa boucle à l'infinie et sa n'affiche toujours pas les prix.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
            While bool = False
                For i = 0 To dgt_conso.RowCount - 2
                    dgt_conso.Item(0, i).Value = ref
                    For j = 0 To Form4.dgt_prod.RowCount - 2
                        If ref = Form4.dgt_prod.Item(1, j).Value Then
                            dgt_conso.Item(2, i).Value = prix
                            prix = Form4.dgt_prod.Item(3, j).Value
                            bool = True
                        End If
                    Next
                Next
            End While
    Est ce que du fait que ce soit une combobox le .item.value ne prenne pas ma valeur en compte ?

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2012
    Messages : 46
    Points : 28
    Points
    28
    Par défaut
    Finalement problème résolu après de nombreux test et recherche en faisant un parcours de tableau. Je laisse mon code (un peu barbare) pour ceux que sa pourrais intérresser
    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
            Dim x As Integer
            Dim k As Integer
            Dim tablo(50) As String
            For x = 0 To Form4.dgt_prod.RowCount - 1
     
                tablo(x) = Form4.dgt_prod.Item(1, x).Value
     
                For i = 0 To tablo.Length - 1 'vérifie pr chaque indice du tablo
                    For j = 0 To dgt_command.RowCount - 1
                        If dgt_command.Item(0, j).Value = tablo(i) Then
                            If i < Form4.dgt_prod.RowCount - 1 Then
                                k = i
                                dgt_command.Item(2, j).Value = Form4.dgt_prod.Item(3, k).Value
                            End If
                        End If
                    Next
                Next
            Next

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 16/06/2014, 17h09
  2. Réponses: 5
    Dernier message: 12/08/2006, 00h36
  3. Réponses: 62
    Dernier message: 05/07/2006, 13h48
  4. Réponses: 3
    Dernier message: 09/01/2006, 09h44
  5. envoie de valeur d'un formulaire vers un autre
    Par kleenex dans le forum Access
    Réponses: 7
    Dernier message: 03/10/2005, 16h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo