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 :

la conversion de la chaine "" en type boolean n'est pas valide


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Inscrit en
    Septembre 2010
    Messages
    168
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2010
    Messages : 168
    Par défaut la conversion de la chaine "" en type boolean n'est pas valide
    Bonjour,
    je veux faire un calcule dans une datagridview voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim total As Double = 0
                For i As Integer = 0 To Me.DataGridView1.Rows.Count - 2
                    If Not IsDBNull(Me.DataGridView1.Rows(i).Cells("liv").Value) Then
                        If CBool(Me.DataGridView1.Rows(i).Cells("liv").Value) = True Then
                            total = total + Val(Me.DataGridView1.Rows(i).Cells("DET_DEV_MONT").Value)
                            Me.TXT_HT.Text = Math.Round(total, 2)
                        End If
                    End If
                Next
    et voici l'erreur
    la conversation de la chaine "" en type boolean n'est pas valide
    Merci d'avance

  2. #2
    Nouveau membre du Club
    Inscrit en
    Avril 2011
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 7
    Par défaut
    salut,

    Le problème c'est que tu cast une chaine de caractère en booléen. A quoi te sert il ce cast?
    (sachant que tu teste deja avant avec IsdbNull si le champ est null ou pas)

  3. #3
    Membre très actif
    Inscrit en
    Septembre 2010
    Messages
    168
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2010
    Messages : 168
    Par défaut
    j'ai déja fait le test
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Not IsDBNull(Me.DataGridView1.Rows(i).Cells("liv").Value)
    Salutations

  4. #4
    Membre Expert Avatar de mactwist69
    Homme Profil pro
    Développement VB.NET
    Inscrit en
    Janvier 2007
    Messages
    1 707
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développement VB.NET
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 707
    Par défaut
    Ta case ne contient en effet pas "DBnull", mais en revanche il contient une chaîne vide.... ce qui ne va pas.

    Cette case est censé contenir quoi ?

  5. #5
    Membre très actif
    Inscrit en
    Septembre 2010
    Messages
    168
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2010
    Messages : 168
    Par défaut
    je vous expliquer
    j'ai une datagridviex contient des case en checkbox et je veux faire le calcule des lignes qui sont sélectionner et qui sont pas sélectionner il faut pas les calculer et voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     Dim total As Double = 0
                For i As Integer = 0 To Me.DataGridView1.Rows.Count - 2
                    If Not IsDBNull(Me.DataGridView1.Rows(i).Cells("liv").Value) Then
                        If CBool(Me.DataGridView1.Rows(i).Cells("liv").Value) = True Then
                            total = total + Val(Me.DataGridView1.Rows(i).Cells("DET_DEV_MONT").Value)
                            Me.TXT_HT.Text = Math.Round(total, 2)
                        End If
                    End If
                Next
    merci d'avance

  6. #6
    Nouveau membre du Club
    Inscrit en
    Avril 2011
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 7
    Par défaut
    le problème c'est que le cast que tu fais n'est pas possible.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    CBool(Me.DataGridView1.Rows(i).Cells("liv").Value)
    Pourquoi veux tu faire ce cast au juste?

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 02/10/2014, 12h50
  2. Réponses: 9
    Dernier message: 17/06/2013, 16h21
  3. Réponses: 12
    Dernier message: 07/02/2011, 23h01
  4. Réponses: 13
    Dernier message: 02/11/2010, 16h03
  5. Réponses: 16
    Dernier message: 06/06/2007, 15h46

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