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 dans une colonne précise


Sujet :

VB.NET

  1. #1
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2014
    Messages : 15
    Par défaut Afficher dans une colonne précise
    bonjour,
    c'est ma première fois dans ce forum, merci de vouloir m'aider.
    en fait je suis entrain de faire plusieurs calculs et je veux que chaque résultat soit affiché dans une colonne de datagridview et pour ça j'ai pensé à faire appel à l'index représentant la colonne mais je n'arrive pas.
    voici un exemple de ce que je suis en train de 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
    For temps = 6 To 50 Step pas / 3600
                If temps <= 18 Then
                    ray = (0.06 + (0.89 - 0.06) * (Math.Sin(((temps - 6) / (18 - 6)) * Math.PI) ^ 2)) * x
                Else : ray = 0
                End If
                If temps <= 18 Then
                    tamb = 20 + (30 - 20) * (Math.Sin(((temps - 6) / (18 - 6)) * Math.PI) ^ 2)
                Else : tamb = 20
                End If
                t1 = (tamb + ((ro * sc * ray * 1000) / (st * pertes))) + ((ti_fluide - tamb - ((ro * sc * ray * 1000) / (st * pertes))) * Math.Exp(-(st * pertes * pas) / (mtot * chamass)))
                t2 = ti_fluide + ((pas / (mtot * chamass)) * ((ray * ro * sc * 1000) - (st * pertes * (ti_fluide - tamb))))
                dtheo = (+ray * pas * 1000 * sc) / (mtot * chamass)
                dift = t1 - t2
            Next
    je veux que le ray soit affiché dans la 2ème colonne, tamb dans la suivante,t1, t2 et ainsi de suite
    veuillez bien m'aider
    merci

  2. #2
    Membre confirmé
    Homme Profil pro
    Webplanneur
    Inscrit en
    Mars 2012
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Webplanneur
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 24
    Par défaut
    Bonsoir
    Juste avant ton Next insetrre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DataGridView.Rows.Add(ray, tamb, t1, t2, dtheo, dift)

  3. #3
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2014
    Messages : 15
    Par défaut
    merci oilve7140, votre réponse m'a vraiment aidé à résoudre le problème mais ne reste si je veux faire appel à l'index de la colonne, comment faire?
    en fait dans une autre partie du code je travaille avec une boucle de colonne for colonne 1 to 3 mais je ne sais pas comment faire, veuillez bien m'aider .
    merci une autre fois

  4. #4
    Membre confirmé
    Homme Profil pro
    Webplanneur
    Inscrit en
    Mars 2012
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Webplanneur
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 24
    Par défaut
    Bonjour

    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
     
     'Avec nom de la colonne ("Col3")
    DataGridView(DataGridView.Columns("Col3").Index, 0).Value = "Ta valeur"
     
    'avec item  colonne  et ligne
    'DataGridView.Item(Colonne, Row)
     
    DataGridView.Item(1, 0).Value = "Ta valeur"
     
            Dim _row As Integer = 0
            For _col = 0 To 2
                DataGridView.Rows.Add()
                DataGridView.Item(_col, _row).Value = "Colonne" & _col & " Ligne " & _row
                _row += 1
            Next

  5. #5
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2014
    Messages : 15
    Par défaut
    bonsoir,
    voici le code :
    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
    For colonne = 1 To 3
                For heure = 6 To 18
                    For N_jour = 1 To 31
                        d = 23.45 * Math.Sin((3.14 / 180) * (360 * ((284 + N_jour) / 365)))
                        w = 15 * (12 - heure)
                        Isc = I0 * (1 + 0.033 * Math.Cos((360 / 365) * (N_jour - 3) * (3.14 / 180)))
                        P = Math.Cos((d) * (3.14 / 180)) * Math.Cos((Fi) * (3.14 / 180)) * Math.Cos((w) * (3.14 / 180)) _
                        + Math.Sin((d) * (3.14 / 180)) * Math.Sin((Fi) * (3.14 / 180))
                        h = Math.Asin(P) * 180 / 3.14
                        Dz = 90 - h
    .
    ..
    ...
                   Next
                    ray1 = somme / 30
                    DataGridView1.Rows.Add(ray1)
                Next
            Next
    c'est au niveau de la première ligne que j'ai problème, je ne sais pas comment intégrer ce que vous m'avez proposer.
    merci enormément

  6. #6
    Membre confirmé
    Homme Profil pro
    Webplanneur
    Inscrit en
    Mars 2012
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Webplanneur
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 24
    Par défaut
    Bonsoir

    Que veux-tu faire exactement?
    inserrer quoi?
    et ou?

  7. #7
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2014
    Messages : 15
    Par défaut
    le but est de calculer le rayonnement pour chaque mois selon les heures et donc j'ai les mois dans les colonnes. je veux que les calculs se font pour chaque mois de 6h à 18h c'est pourquoi j'ai fait appel à la boucle des colonnes en 1er lier puis celle des heures, mais le problème qu'il me reste est comment dire au programme de passer d'une colonne à une autre.
    merci

  8. #8
    Membre confirmé
    Homme Profil pro
    Webplanneur
    Inscrit en
    Mars 2012
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Webplanneur
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 24
    Par défaut
    Re bonsoir
    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 itemcol As DataGridViewColumn
            Dim itemRow As DataGridViewRow
     
     'boucle sur chaque colonne
            For Each itemcol In Me.DataGridView.Columns
     
              'lit toutes les lignes de la premiere colonne
                For Each itemRow In Me.DataGridView.Rows 
     
               'si la ligne n'est pas vide
                    If Not DataGridView.Item(itemcol.Index, itemRow.Index).Value Is Nothing Then         
                        MessageBox.Show(" " & CStr(DataGridView.Item(itemcol.Index, itemRow.Index).Value))
                    end if
                Next
     
                'passe à la colonne suivante
            Next

  9. #9
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2014
    Messages : 15
    Par défaut
    bonjour,
    je n'ai pas précisé que j'utilise deux modèles pour mes calculs, le 1er de janvier à mars puis de septembre à décembre, et le 2ème d'avril à aout.
    et donc je ne peux pas appliquer la boucle pour toutes les colonnes.
    merci de vouloir m'aider

  10. #10
    Membre confirmé
    Homme Profil pro
    Webplanneur
    Inscrit en
    Mars 2012
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Webplanneur
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 24
    Par défaut
    Bonsoir
    et comme ça

    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
     
        Dim itemcol As DataGridViewColumn
     
            For Each itemcol In Me.DataGridView.Columns
             'par le nom des colonnes
                Select Case itemcol.Name
                    Case "Janvier", "Février", "Mars", "Septembre", "Octobre", "Novembre", "Décembre"
                        'ton code
                    Case "Avril", "MAi", "Juin", "Juillet", "Aout"
                        'ton 2eme code
                    Case Else
     
                End Select
     
            Next
     
    'ou par les index
     Select Case itemcol.Index
                    Case 0,1, 2, 8, 9, 10, 11
                       'ton code
                    Case 3, 4, 5, 6, 7
                       'ton 2eme code
                    Case Else
     
               End Select

  11. #11
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2014
    Messages : 15
    Par défaut
    bonjour,
    désolé j'avais un problème de connexion. j'ai essayé ce que vous m'avez proposer mais toujours rien, lors de l’exécution pas à pas détaillé j'ai constaté que le programme passe de la ligne où Case "Janvier", "Février", "Mars" à l'autre Case "Avril", "Mai", "Juin", "Juillet", "Aout" sans lire les instructions entre les deux.

  12. #12
    Membre confirmé
    Homme Profil pro
    Webplanneur
    Inscrit en
    Mars 2012
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Webplanneur
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 24
    Par défaut
    Bonjour

    J'ai mis "Janvier"Février" ...

    Est-ce bien le noms de tes colonnes?
    Sinon essaies avec l'index des colonnes

  13. #13
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2014
    Messages : 15
    Par défaut
    bonsoir,
    en utilisant les index les résultats ne s'affichent qu'au niveau de la première colonne
    code:
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    For Each itemcol In Me.DataGridView1.Columns
                Select Case itemcol.Index
                    Case 0, 1, 2
                        For heure = 6 To 18
                            For N_jour = 1 To 31
                                d = 23.45 * Math.Sin((3.14 / 180) * (360 * ((284 + N_jour) / 365)))
                                w = 15 * (12 - heure)
                                Isc = I0 * (1 + 0.033 * Math.Cos((360 / 365) * (N_jour - 3) * (3.14 / 180)))
                                P = Math.Cos((d) * (3.14 / 180)) * Math.Cos((Fi) * (3.14 / 180)) * Math.Cos((w) * (3.14 / 180)) _
                                + Math.Sin((d) * (3.14 / 180)) * Math.Sin((Fi) * (3.14 / 180))
                                h = Math.Asin(P) * 180 / 3.14
                                Dz = 90 - h
                                mr = (Math.Sin((Dz) * (3.14 / 180)) + 0.15 * (Dz - 3.885) ^ -1.253) ^ (-1)
                                l = ((235 + (150 + 40 * Math.Sin(0.9856 * (N_jour - 30)) + 20 * Math.Sin((3 * Longi) * (3.14 / 180))) _
                                * (Math.Sin((1.28 * Fi) * (3.14 / 180))) ^ 2) / 1000) / 100
                                U0 = l * mr
                                C = (0.02118 * U0 / (1 + 0.042 * U0 + 0.000323 * U0 ^ 2)) + (1.082 * U0 / (1 + 138.6 * U0) ^ 0.805) _
                                + (0.0658 * U0 / (1 + (103.6 * U0) ^ 3))
                                ma = Math.Exp(-0.0001184 * Z) * mr
                                Rr1 = 0.972 - 0.08262 * ma + 0.00933 * ma ^ 2 - 0.00095 * ma ^ 3 + 0.000437 * ma ^ 4
                                Uw = ((0.493 / T) * HR * Math.Exp(26.23 - (5416 / T))) / 100
                                Xw = ma * Uw
                                Cw = (2.9 * Xw) / (((1 + 141.5 * Xw) ^ 0.635) + (5.925 * Xw))
                                Ta = (0.12445 * 4 - 0.0162) + (1.003 - 0.125 * 4) * Math.Exp(-f * ma * (1.089 * 4 + 0.5123))
                                IM1 = Isc * ((1 - C) * Rr1 - Cw) * Ta * Math.Cos((Dz) * (3.14 / 180))
                                R01 = 1 - C
                                Dr1 = Isc * R01 * Ta * (1 - Rr1) * 0.5 * Math.Cos((Dz) * (3.14 / 180))
                                Da1 = Isc * (R01 * Rr1 - Cw) * (Fc * W1 * (1 - Ta)) * Math.Cos((Dz) * (3.14 / 180))
                                Ta1 = 1.655
                                Ka1 = 0.0685 + (1 - Fc) * W1 * (1 - Ta1)
                                Dm1 = ((IM1 + Da1 + Dr1) * K * Ka1) / (1 - K * Ka1)
                                Idiffus1 = Dr1 + Da1 + Dm1
                                I1 = ((IM1 + Idiffus1) / 1000)
                                If I1 < 0 Then
                                    I1 = 0
                                End If
                                somme = somme + I1
                            Next
                            ray1 = somme / 30
                            DataGridView1.Rows.Add(ray1)
                        Next
          end select
         next
    voici une partie du code, je ne sais pas si c'est au niveau de la dernière ligne en demandant l'affichage
    merci bien une autre fois

Discussions similaires

  1. Réponses: 2
    Dernier message: 05/12/2014, 17h01
  2. [WD18] Afficher dans une colonne deux rubriques
    Par hicham-dj dans le forum WinDev
    Réponses: 4
    Dernier message: 20/03/2014, 13h29
  3. Réponses: 4
    Dernier message: 23/12/2010, 09h35
  4. Réponses: 3
    Dernier message: 16/05/2006, 14h47
  5. Réponses: 1
    Dernier message: 14/05/2006, 19h52

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