Exception du a excel [Résolu]

Messages postés
32
Date d'inscription
jeudi 3 août 2006
Dernière intervention
6 septembre 2006
- 28 août 2006 à 11:11 - Dernière réponse :
Messages postés
7745
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
24 septembre 2014
- 28 août 2006 à 12:19
bonjour a tous

j'ai une exception de ce type

An error occurred creating the form. See Exception.InnerException for details.  The error is: Impossible d'effectuer un cast d'un objet COM de type 'System.__ComObject' en type d'interface 'Excel.Worksheets'. Cette opération a échoué, car l'appel QueryInterface sur le composant COM pour l'interface avec l'IID '{000208B1-0000-0000-C000-000000000046}' a échoué en raison de l'erreur suivante : Cette interface n'est pas prise en charge (Exception de HRESULT : 0x80004002 (E_NOINTERFACE)).

due de la declaration de cette ligne
Dim

Feuilles As Excel.Worksheets = CType(Classeur.Worksheets, Excel.Worksheets)merci de votre aide
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
Messages postés
7745
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
24 septembre 2014
- 28 août 2006 à 12:19
3
Merci
Le problème viens apparement de la déclaration de la variable Feuilles

il faudrait mettre         Dim Feuilles As Excel.Sheets = CType(Classeur.Worksheets, Excel.Sheets)

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #

Merci cs_casy 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de cs_casy
Messages postés
17308
Date d'inscription
mercredi 2 janvier 2002
Dernière intervention
22 août 2018
- 28 août 2006 à 11:24
0
Merci
ben.... il doit avoir raison ^^
"due à Excel" je sais pas....
vérifie par exemple que ton Classeur.Worksheets n'est pas null, que c'est bien un Excel.Worksheets...

en passant, tu n'est pas en VB6, contrairement à ce que la section où tu as rangé ton topic indique...
bon, ben, je le déplace.

Renfield
Admin CodeS-SourceS- MVP Visual Basic
Commenter la réponse de Renfield
Messages postés
32
Date d'inscription
jeudi 3 août 2006
Dernière intervention
6 septembre 2006
- 28 août 2006 à 11:28
0
Merci
Re

au debut je bossé que sur une feuille d'excel ca a bien marché. et la quand j'ai mis
Dim

Feuilles As Excel.Worksheets = CType(Classeur.Worksheets, Excel.Worksheets)
il me met une exception

merci
Commenter la réponse de chanel35
Messages postés
7745
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
24 septembre 2014
- 28 août 2006 à 11:29
0
Merci
Juste pour préciser Renfield que Excel ce n'est pas du VB.NET mais du VBA.

Donc la section qui va bien c'est Visual Basic 6/ Langages dérivés/VBA

Et je crois que c'était la section de départ, non? j'ai pau eu le temps de la noter

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #
Commenter la réponse de cs_casy
Messages postés
17308
Date d'inscription
mercredi 2 janvier 2002
Dernière intervention
22 août 2018
- 28 août 2006 à 11:34
0
Merci
Je sais plus où c'était, exactement, mais c'était pas dans la section VBA...

"que sur une feuille excel".... que fais tu, là :S ?

Renfield
Admin CodeS-SourceS- MVP Visual Basic
Commenter la réponse de Renfield
Messages postés
7745
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
24 septembre 2014
- 28 août 2006 à 11:38
0
Merci
Chanel35 donne nous quelques précisions sur ton environnement de développement.

Après quelques essais, la fonction Ctype ne semble exister que sous .net

J'en déduit donc que tu développe en VB.NET 2003 ou 2005, et que tu essaye d'acceder à un fichier excel depuis ton appli.
Tu n'es pas du tout sous Excel comme j'ai cru au départ.
Donc Renfield aurait raison de déplacer ce message, autant pour moi.

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #
Commenter la réponse de cs_casy
Messages postés
32
Date d'inscription
jeudi 3 août 2006
Dernière intervention
6 septembre 2006
- 28 août 2006 à 11:48
0
Merci
je suis sous visual basic 2005 expresse
Commenter la réponse de chanel35
Messages postés
7745
Date d'inscription
mercredi 1 septembre 2004
Dernière intervention
24 septembre 2014
- 28 août 2006 à 11:58
0
Merci
Tu as certainement un problème de décalration de ta variable Classeur (elle devrait etre normalement de type Excel.WorkBook). Ou alors elle n'est pas encore initialisée au moment ou tu fait le Dim.

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #
Commenter la réponse de cs_casy
Messages postés
32
Date d'inscription
jeudi 3 août 2006
Dernière intervention
6 septembre 2006
- 28 août 2006 à 12:03
0
Merci
voici les declaration

Dim

Appli
As Excel.Application = _

CType(CreateObject(
"Excel.Application"), Excel.Application)

Dim Classeur
As Excel.Workbook = _

CType(Appli.Workbooks.Add, Excel.Workbook)

Dim Feuilles
As Excel.Worksheets =
CType(Classeur.Worksheets, Excel.Worksheets)
Commenter la réponse de chanel35

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.