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 :

Traduction d'un message d'erreur , SVP [Débutant]


Sujet :

VB.NET

  1. #1
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mars 2012
    Messages : 139
    Points : 90
    Points
    90
    Par défaut Traduction d'un message d'erreur , SVP
    Bonjour tout le monde,

    Quand je fais marcher mon programme, au bout d'un moment, un message d'erreur affiche :

    La référence d'objet n'est pas définie à une instance d'un objet
    Vous savez ça veut dire quoi ? Je n'ai pas d'idée sur ces notions.. oh là là

    Merci d'avance de votre temps ..Merci !!!

  2. #2
    Membre habitué
    Homme Profil pro
    Inscrit en
    Mai 2010
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Australie

    Informations professionnelles :
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2010
    Messages : 132
    Points : 166
    Points
    166
    Par défaut
    Tu as appelé une sub, ou une function ou essayé de lire une propriété sur un objet non créé (IsNothing).

    Visual studio doit te souligner une ligne avec l'objet en question. Montre un bout de code si tu veux plus d'information

  3. #3
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mars 2012
    Messages : 139
    Points : 90
    Points
    90
    Par défaut
    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
      Private Sub Timer7_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer7.Tick
                Dim tempo As Integer = 0
                Dim Var As String
                Dim Value As Integer
                Dim Para As String
                Dim Decimale As Byte
     
                ' Select Case Numero
                ' Case 0
                If ExcelLigne = NumLigne + 1 Then
                    BookExcel.Close()
                    AppExcel.Quit()
     
                    BookExcel = Nothing
                    SheetExcel = Nothing
                    AppExcel = Nothing
                    Timer7.Stop()
                    'MsgBox("Fin de base")
     
                End If
     
                If InStr(SheetExcel.Cells(ExcelLigne, 5).Value.ToString, "écriture") > 0 And ExcelLigne < NumLigne + 1 Then
                    Var = SheetExcel.Cells(ExcelLigne, 6).value.ToString
                    Para = Microsoft.VisualBasic.Left(Var, 2) + Microsoft.VisualBasic.Right(Var, 2)
     
                    Value = SheetExcel.Cells(ExcelLigne, 4).value
                    Decimale = SheetExcel.Cells(ExcelLigne, 7).value
     
                    WriteToCan("0F", Para, Value, Decimale)
                    NbRW = NbRW + 1
                    NumericUpDown65.Value = NbRW
                End If
     
                ExcelLigne = ExcelLigne + 1
                NumericUpDown64.Value = ExcelLigne
     
                ' End Select
            End Sub
    Merci bien de me répondre !!
    Je viens de regarder une discussion qui a le même sujet que moi et j'ai regardé un peu. je pense que c'est mon Timer qui a mal configuré. Mais je ne sais pas trop comment on fait.

    Dans le timer, il y a 6 propriétés, et que la propriété "Tag" qui est vide.

    Vous avez une idée ?

    Merci d'avance et merci bcp

  4. #4
    Membre habitué
    Homme Profil pro
    Inscrit en
    Mai 2010
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Australie

    Informations professionnelles :
    Secteur : Bâtiment

    Informations forums :
    Inscription : Mai 2010
    Messages : 132
    Points : 166
    Points
    166
    Par défaut
    L'erreur se produit sur quelle ligne?

  5. #5
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mars 2012
    Messages : 139
    Points : 90
    Points
    90
    Par défaut
    alors c'est un peu délicat, car mon programme utilise un convertisseur CAN analyser. Le programme j'écris sera intégré dans le logiciel de ce convertisseur.

    Un problème est que pour l'instant, je ne peux pas utiliser la fonction débugger, la dernière fois que j'essaie de modifier le propriété, du coup le clé d'activation du logiciel a été éffacé et du coup .. ça était compliqué. je dois contacter l'entreprise qui nous vend le logiciel pour débugger,.

    Je vais refaire ça, mais il faut que je sois très claire, c'est pour ça.

  6. #6
    Membre expérimenté Avatar de hunteshiva
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Février 2010
    Messages
    1 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2010
    Messages : 1 069
    Points : 1 455
    Points
    1 455
    Par défaut
    Bonjour,

    fait un dégogeur manuel ^^

    tu a deux options,



  7. #7
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mars 2012
    Messages : 139
    Points : 90
    Points
    90
    Par défaut
    Merci bcp tous les 2,
    je vais essayer d'abord et je vous tiens au courant.

    Merci !!

  8. #8
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Points : 4 232
    Points
    4 232
    Par défaut
    Citation Envoyé par hunteshiva Voir le message
    Avec Debug.writeLine("La ligen à écrire dans la console du débuggeur") c'est encore mieux et c'est fait pour

  9. #9
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mars 2012
    Messages : 139
    Points : 90
    Points
    90
    Par défaut
    ça y est, j'arrive à utiliser le débuggage. C'est la ligne 22.
    Images attachées Images attachées  

  10. #10
    Membre expérimenté Avatar de hunteshiva
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Février 2010
    Messages
    1 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2010
    Messages : 1 069
    Points : 1 455
    Points
    1 455
    Par défaut
    c'est mieux avec les images mais bon on va pas mourir si t'en met pas

    Tu dis que c'est à la ligne 22?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If InStr(SheetExcel.Cells(ExcelLigne, 5).Value.ToString, "écriture") > 0 And ExcelLigne < NumLigne + 1 Then
    éclate ton code de manière a ce que tu puisse voir ou sont les valeurs qui vont pas.

    A mon avis le problème vient de la lecture de ta cellule Excel, essaye voir si ton "InStr" fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Try
     
        Dim Cellule_EXCEL as integer
        Cellule_EXCEL = InStr(SheetExcel.Cells(ExcelLigne, 5).Value.ToString, "écriture")
     
    Catch ex As Exception
        MsgBox(ex.Message)
     
    End Try

  11. #11
    Membre expérimenté Avatar de hunteshiva
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Février 2010
    Messages
    1 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2010
    Messages : 1 069
    Points : 1 455
    Points
    1 455
    Par défaut
    Une question comme ça,
    tu le déclare ou? c'est un Int?

  12. #12
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Points : 4 232
    Points
    4 232
    Par défaut
    A coup sur cela provient de SheetExcel qui n'est pas initialisée car c'est le seul objet.

    Essayer en mettant cette ligne avant la ligne 22

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if SheetExcel is nothing then
       msgbox("le probleme vien bien d'ici")
    end if

  13. #13
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mars 2012
    Messages : 139
    Points : 90
    Points
    90
    Par défaut
    En fait, je lis des caractères dans les cases de Excel. tout se passe bien avant le dernier case. quand j'arrive au dernier, cet erreur affiche.

    je ne comprends plus rien.. il a demander de créer un instance avec "New"..

  14. #14
    Membre expérimenté Avatar de hunteshiva
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Février 2010
    Messages
    1 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2010
    Messages : 1 069
    Points : 1 455
    Points
    1 455
    Par défaut
    Oula pas de pression xingjing910

    l'initialisation avec un "New" c'est juste que c'est un objet,
    donc il a une méthode "New" qui permet d'instancier tous ces paramètres correctement pour éviter le genre d'erreur auquel tu fait face.

    Le New c'est rien de plus qu'un Dim pour les objets
    (dans l'idée bien sur ^^)

    Oui comme dit Sankasssss,
    en fait ton programme plante parcequ'il ne connais pas "SheetExcel",
    a aucun moment tu l'attache à un fichier Excel... donc pour lui il ne fait pas le lien entre ton fichier Excel et ta "SheetExcel"...

    tu a déjà ouvert quelque part ton fichier Excel?

  15. #15
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Points : 4 232
    Points
    4 232
    Par défaut
    Pourrait-on voir l'initialisation des variables de l'application?
    Car SheetExcel n'est apparemment jamais initialisée, et malheureusement les Sheet Excel ne s'initialise pas avec des New

  16. #16
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mars 2012
    Messages : 139
    Points : 90
    Points
    90
    Par défaut
    OK, je m'explique.

    1 : le code du boutton start qui demande de commencer à lire le fichier excel
    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
     Dim fin As Boolean = False
                AppExcel = New Excel.Application
                BookExcel = AppExcel.Workbooks.Open("C:\base.xls")
                SheetExcel = BookExcel.Worksheets(1)
                ExcelLigne = 1
                Do Until fin
                    If SheetExcel.Cells(ExcelLigne, 6).value <> "22.99" Then
                        NumLigne = NumLigne + 1
                        ExcelLigne = ExcelLigne + 1
                    Else : fin = True
                    End If
                Loop
                ExcelLigne = 2
                Numero = 0
                Timer7.Start()
    2: Ensuite, dans le Timer correspondant, on lit le fichier .
    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
    Private Sub Timer7_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer7.Tick
                Dim tempo As Integer = 0
                Dim Var As String
                Dim Value As Integer
                Dim Para As String
                Dim Decimale As Byte
                Dim CelExcel As Integer
     
                ' Select Case Numero
                ' Case 0
                If ExcelLigne = NumLigne + 1 Then
                    BookExcel.Close()
                    AppExcel.Quit()
     
                    BookExcel = Nothing
                    SheetExcel = Nothing
                    AppExcel = Nothing
                    Timer7.Stop()
                    MsgBox(ExcelLigne.ToString)
     
                End If
     
                CelExcel = InStr(SheetExcel.Cells(ExcelLigne, 5).Value.ToString, "écriture")
     
                If CelExcel > 0 And ExcelLigne < NumLigne + 1 Then
                    Var = SheetExcel.Cells(ExcelLigne, 6).value.ToString
                    Para = Microsoft.VisualBasic.Left(Var, 2) + Microsoft.VisualBasic.Right(Var, 2)
                    TextBox1.Text = Para
     
                    Value = SheetExcel.Cells(ExcelLigne, 4).value
                    Decimale = SheetExcel.Cells(ExcelLigne, 7).value
     
                    WriteToCan("0F", Para, Value, Decimale)
                    NbRW = NbRW + 1
                    NumericUpDown65.Value = NbRW
                End If
     
                ExcelLigne = ExcelLigne + 1
                NumericUpDown64.Value = ExcelLigne
     
                ' End Select
            End Sub
    3: il y a un boutton stop, qui arrête la lecture du fichier excel, mais bon, souvent on laisse finir de lire.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub EnvoiAuto_Stop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EnvoiAuto_Stop.Click
                BookExcel.Close()
                AppExcel.Quit()
     
                BookExcel = Nothing
                SheetExcel = Nothing
                AppExcel = Nothing
     
                Timer7.Stop()
            End Sub
    Je pense aussi le programme ne connais pas, mais pourquoi avant la dernière ligne qu'il ne connait pas ?

    Merci beaucoup tout le monde, surtout hunteshiva ..
    Images attachées Images attachées  

  17. #17
    Membre expérimenté Avatar de hunteshiva
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Février 2010
    Messages
    1 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2010
    Messages : 1 069
    Points : 1 455
    Points
    1 455
    Par défaut
    ou sont déclarés
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
                AppExcel = New Excel.Application
                BookExcel = AppExcel.Workbooks.Open("C:\base.xls")
                SheetExcel = BookExcel.Worksheets(1)
    ???

  18. #18
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mars 2012
    Messages : 139
    Points : 90
    Points
    90
    Par défaut
    Hunteshiva,

    Pourquoi interrogation ? j'ai décalé les 3 variables globales au début du prog.
    AppExcel
    BookExcel
    SheetExcel

  19. #19
    Membre expérimenté Avatar de hunteshiva
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Février 2010
    Messages
    1 069
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2010
    Messages : 1 069
    Points : 1 455
    Points
    1 455
    Par défaut
    tu peux nous mettre le code qui t'a permis de les déclarer *stp*

  20. #20
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Points : 4 232
    Points
    4 232
    Par défaut
    Une autre possibilité serait que ce n'est pas SheetExcel qui serait nothing mais la cellule SheetExcel.Cells(ExcelLigne, 5) (On aurait su cela si tu avais exécuté ce que je demandais au message ici)

    Sinon, pour savoir cela, rien ne vaut un bon débogage.
    Pour se faire, il faut mettre un point d’arrêt sur la ligne n°4 du code ci-dessous. Une fois que le programme s'arrête sur la ligne n°4, on passe son curseur sur SheetExcel, la on peut voir s'il est vide ou pas, s'il ne l'est pas on sélectionne SheetExcel.Cells(ExcelLigne, 5), on passe le curseur, on voit si c'est vide ou pas, s'il ne l'est pas on continue avec la sélection de SheetExcel.Cells(ExcelLigne, 5).Value, on voit si c'est vide ou pas... Et on trouve rapidement ce qui génère cette exception

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Try
     
        Dim Cellule_EXCEL as integer
        Cellule_EXCEL = InStr(SheetExcel.Cells(ExcelLigne, 5).Value.ToString, "écriture")
     
    Catch ex As Exception
        MsgBox(ex.Message)
     
    End Try

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [Zend Form] Traduction des messages d'erreur
    Par Coyote Terrorist dans le forum Zend_Form
    Réponses: 8
    Dernier message: 01/08/2011, 19h33
  2. Réponses: 1
    Dernier message: 23/03/2009, 15h56
  3. Messages d'erreur : traduction en français
    Par Didier Pitre dans le forum Ruby on Rails
    Réponses: 2
    Dernier message: 24/04/2008, 07h28
  4. Message d'erreur pas très explicite-- help SVP!
    Par vonemya dans le forum C++
    Réponses: 3
    Dernier message: 28/08/2007, 14h05
  5. Un message d'erreur intitulé: unknown Hard Error; comment faire SVP
    Par Maman Kakalé Néhémiya dans le forum Ordinateurs
    Réponses: 6
    Dernier message: 14/09/2006, 11h41

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