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 :

message erreur utilisant valeur datagridview pour calcul


Sujet :

VB.NET

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Janvier 2012
    Messages : 44
    Points : 26
    Points
    26
    Par défaut message erreur utilisant valeur datagridview pour calcul
    Bonjour,
    Pouvez vous m'éclairer sur ce message d'erreur svp ?

    L'exception argument ArgumentOutOfRangeException n'a pas été gérée.
    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
    Cordialement,
    Merci

  2. #2
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Points : 3 102
    Points
    3 102
    Par défaut
    Bonjour,

    il s'agit d'un problème d'index, probablement dans une boucle... Te voilà bien avancé...

    Il faut que tu nous donnes plus d'éléments (du code notamment) pour que nous puissions t'aider.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Janvier 2012
    Messages : 44
    Points : 26
    Points
    26
    Par défaut
    Au début, j'ai réalisé mon programme avec une boucle while puis vu que cela ne marchait pas, j'ai essayé sans boucle. Donc j'ai actuellement cela :

    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
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    Function CalculCaquot1() As Double
            Dim a2 As Double = Convert.ToDouble(Me.Labela2.Text)
            Dim b2 As Double = Convert.ToDouble(Me.Labelb2.Text)
            Dim LabelQmaxi As Double
            Dim ValeurS1 As Double = Convert.ToDouble(Me.DataGridView1.Rows(0).Cells("Surfacetotale").Value)
            Dim ValeurL1 As Double = Convert.ToDouble(Me.DataGridView1.Rows(0).Cells("longueur").Value)
            Dim ValeurC1 As Double = Convert.ToDouble(Me.DataGridView1.Rows(0).Cells("Coefficientimpermeabilisation").Value)
            Dim ValeurP1 As Double = Convert.ToDouble(Me.DataGridView1.Rows(0).Cells("pente").Value)
     
     
            LabelQmaxi = ((((a2 / 60) / 6.6) * (0.28 * (ValeurL1 / 100) ^ 0.84 * (ValeurS1 / 10000) ^ -0.42) ^ -b2) ^ (1 / (1 - 0.287 * b2))) * (ValeurC1 ^ (1 / (1 - 0.287 * b2))) * ((ValeurP1 / 100) ^ (0.41 * b2 / (1 - 0.287 * b2))) * ((ValeurS1 / 10000) ^ ((0.95 - 0.507 * b2) / (1 - 0.287 * b2))) * 1000
     
            Return LabelQmaxi
     
        End Function
     
        Function CalculCaquot2() As Double
            Dim a2 As Double = Convert.ToDouble(Me.Labela2.Text)
            Dim b2 As Double = Convert.ToDouble(Me.Labelb2.Text)
            Dim LabelQmaxi As Double
            Dim ValeurS2 As Double = Convert.ToDouble(Me.DataGridView1.Rows(1).Cells("Surfacetotale").Value)
            Dim ValeurL2 As Double = Convert.ToDouble(Me.DataGridView1.Rows(1).Cells("longueur").Value)
            Dim ValeurC2 As Double = Convert.ToDouble(Me.DataGridView1.Rows(1).Cells("Coefficientimpermeabilisation").Value)
            Dim ValeurP2 As Double = Convert.ToDouble(Me.DataGridView1.Rows(1).Cells("pente").Value)
     
            LabelQmaxi = ((((a2 / 60) / 6.6) * (0.28 * (ValeurL2 / 100) ^ 0.84 * (ValeurS2 / 10000) ^ -0.42) ^ -b2) ^ (1 / (1 - 0.287 * b2))) * (ValeurC2 ^ (1 / (1 - 0.287 * b2))) * ((ValeurP2 / 100) ^ (0.41 * b2 / (1 - 0.287 * b2))) * ((ValeurS2 / 10000) ^ ((0.95 - 0.507 * b2) / (1 - 0.287 * b2))) * 1000
     
            Return LabelQmaxi
     
        End Function
     
        Function CalculCaquot3() As Double
            Dim a2 As Double = Convert.ToDouble(Me.Labela2.Text)
            Dim b2 As Double = Convert.ToDouble(Me.Labelb2.Text)
            Dim LabelQmaxi As Double
            Dim ValeurS3 As Double = Convert.ToDouble(Me.DataGridView1.Rows(2).Cells("Surfacetotale").Value)
            Dim ValeurL3 As Double = Convert.ToDouble(Me.DataGridView1.Rows(2).Cells("longueur").Value)
            Dim ValeurC3 As Double = Convert.ToDouble(Me.DataGridView1.Rows(2).Cells("Coefficientimpermeabilisation").Value)
            Dim ValeurP3 As Double = Convert.ToDouble(Me.DataGridView1.Rows(2).Cells("pente").Value)
     
            LabelQmaxi = ((((a2 / 60) / 6.6) * (0.28 * (ValeurL3 / 100) ^ 0.84 * (ValeurS3 / 10000) ^ -0.42) ^ -b2) ^ (1 / (1 - 0.287 * b2))) * (ValeurC3 ^ (1 / (1 - 0.287 * b2))) * ((ValeurP3 / 100) ^ (0.41 * b2 / (1 - 0.287 * b2))) * ((ValeurS3 / 10000) ^ ((0.95 - 0.507 * b2) / (1 - 0.287 * b2))) * 1000
     
            Return LabelQmaxi
     
        End Function
     
    Private Sub ButtonCalcul2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonCalcul2.Click
            If Verification() Then
                Me.DataGridView2.Rows(0).Cells("debit").Value = CalculCaquot1().ToString("0.0#")
                Me.DataGridView2.Rows(1).Cells("debit").Value = CalculCaquot2().ToString("0.0#")
                Me.DataGridView2.Rows(2).Cells("debit").Value = CalculCaquot3().ToString("0.0#")
                Me.DataGridView2.Rows(3).Cells("debit").Value = CalculCaquot4().ToString("0.0#")
            Else
                Me.erreur2.Visible = True
            End If
        End Sub
    Mais j'ai encore la même erreur qui apparait à cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.DataGridView2.Rows(1).Cells("debit").Value = CalculCaquot2().ToString("0.0#")

Discussions similaires

  1. Réponses: 0
    Dernier message: 12/04/2014, 14h54
  2. Utiliser valeur listbox pour champ TCD
    Par Scrabblouille dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 17/08/2011, 21h44
  3. Réponses: 5
    Dernier message: 11/10/2010, 16h04
  4. utiliser valeur champ pour mot de passe
    Par marcmarc150 dans le forum IHM
    Réponses: 3
    Dernier message: 31/01/2010, 10h26

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