Problème d'erreur sur vb

Signaler
Messages postés
91
Date d'inscription
mardi 19 mai 2009
Statut
Membre
Dernière intervention
23 juin 2009
-
Messages postés
91
Date d'inscription
mardi 19 mai 2009
Statut
Membre
Dernière intervention
23 juin 2009
-
Bonjour à tous!
Mon code envoi mon datagrid sur excel, il le fait très bien mais le seul problème est qu'après l'avoir affiché, un message d'erreur apparais et me dit:  La référence d'objet n'est pas définie à une instance d'un objet.
Voici mon code:

'Transfert du datagrid vers excel'

        Dim x12 As New Object
        x12 = CreateObject("Excel.application")
        x12.visible = True
        x12.workbooks.Add()
        For x As Integer = 0 To DataGridView1.Rows.Count - 1
            For y As Integer = 0 To DataGridView1.ColumnCount - 1
                x12.cells(x + 1, y + 1) = DataGridView1.Rows(x).Cells.Item(y).Value.ToString
            Next y
        Next x

La ligne entre les deux smileys et la ligne qui est représentée comme faute et il faut savoir aussi que ce code est aussi utilisé pour un autre datagrid et qu'il ne pose aucun problème et aucun message d'erreur
Merci d'avance
PS: je suis sur Visual Basic 2008

5 réponses

Messages postés
160
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
8 janvier 2010
2
Si ton datagrid est généré correctement tu peux simplement essayer de bloquer le message avec la façon suivante:

Dim x12 As New Object
        x12 = CreateObject("Excel.application")
        x12.visible = True
        x12.workbooks.Add()

x12.SetWarnings False

For x As Integer = 0 To DataGridView1.Rows.Count - 1
            For y As Integer = 0 To DataGridView1.ColumnCount - 1
                x12.cells(x + 1, y + 1) = DataGridView1.Rows(x).Cells.Item(y).Value.ToString
            Next y
        Next x

x12.SetWarnings True

Bonne continuation
Messages postés
91
Date d'inscription
mardi 19 mai 2009
Statut
Membre
Dernière intervention
23 juin 2009

Merci beaucoup mais inefficace, il me souligne :
                                                                   x12.SetWarnings(False)      

et il me dit:
Le membre public 'SetWarnings' du type 'ApplicationClass' est introuvable.
Messages postés
401
Date d'inscription
mercredi 19 avril 2006
Statut
Membre
Dernière intervention
6 juin 2011
1
Bonjour,

Ton erreur signifie qu'un des deux membres est nul.
Alors soit ton l'item dans ton datagrid que tu essaie de récupérer n'existe pas soit il s'agit de la cellule de ton classeur.

Je pencherais plus pour un x12.activeworkbook.cells(x+1,y+1)

Bonne Prog
Messages postés
160
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
8 janvier 2010
2
x12.docmd.SetWarnings False
Messages postés
91
Date d'inscription
mardi 19 mai 2009
Statut
Membre
Dernière intervention
23 juin 2009

Merci Lesdis mais sa ne marche pas, il me dit :  Le membre public 'cells' du type 'Workbook' est introuvable.

Et merci Supra mais sa ne marche pas non plus, il me dit: Le membre public 'docmd' du type 'ApplicationClass' est introuvable.
De plus je pense que bloquer le message d'erreur n'est peut être pas une solution mais je t'avouerais que si sa marche sa ne me dérange pas