Nouvelle feuille Excel en VB2005

Résolu
Zachs Messages postés 202 Date d'inscription mardi 14 novembre 2006 Statut Membre Dernière intervention 10 février 2009 - 3 août 2007 à 10:35
 Utilisateur anonyme - 3 août 2007 à 17:06
Bonjour, jai un projet add'ins excel en vb2005, dans le quel je crée un nouvelle feuille à l'aide de la commande "Globals.ThisWorkbook.Sheets.Add()" mais le probleme c'est que je n'arrive pas a interragir avec, dans le code.

Si quelqu'un a une idée qu'il leve au la main  merci

--------------------->>
Ordi, frigo, dodo...
Quelle dur journée!

15 réponses

Utilisateur anonyme
3 août 2007 à 13:42
Essaye ceci :
Dim Sheet As Microsoft.Office.Interop.Excel.Worksheet = CType(Global.ThisWorkbook.Sheets.Add(), Microsoft.Office.Interop.Excel.Worksheet)







__________
Kenji

(


Nouveau forum VBA/Office
3
Utilisateur anonyme
3 août 2007 à 11:30
Salut,

La méthode (fonction?) Add ne te retourne pas l'instance de la feuille créer ?







__________
Kenji

(


Nouveau forum VBA/Office
0
Zachs Messages postés 202 Date d'inscription mardi 14 novembre 2006 Statut Membre Dernière intervention 10 février 2009
3 août 2007 à 11:38
l'instance??? (je me perd tout le temps dans les termes)

--------------------->>
Ordi, frigo, dodo...
Quelle dur journée!
0
Utilisateur anonyme
3 août 2007 à 11:52
Je n'ai pas vsto pour tester, donc, je suis à l'aveugle.
Ne peux tu pas faire un truc du genre :
Dim Sheet as Excel.Sheet = Globals.ThisWorkbook.Sheets.Add()

Ou Sheet contiendra l'instance (la classe) qui représente la feuille créer (pour acceder à ses membres (méthodes, fonctions, propriétées)).






__________
Kenji

(


Nouveau forum VBA/Office
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Zachs Messages postés 202 Date d'inscription mardi 14 novembre 2006 Statut Membre Dernière intervention 10 février 2009
3 août 2007 à 11:55
--------------------->>
Ordi, frigo, dodo...
Quelle dur journée!
0
Zachs Messages postés 202 Date d'inscription mardi 14 novembre 2006 Statut Membre Dernière intervention 10 février 2009
3 août 2007 à 11:56
Oups dsl pour le blanc.

Na il veut pas. Il me sort "Impossible d'effectuer un cast du proxy transparent en type 'Microsoft.Office.Interop.Excel.Sheets'." comme erreur

--------------------->>
Ordi, frigo, dodo...
Quelle dur journée!
0
Utilisateur anonyme
3 août 2007 à 12:15
Donc la fonction retourne bien quelquechose.
Donc, si tu met :
Dim Sheet as Microsoft.Office.Interop.Excel.Sheets = Globals.ThisWorkbook.Sheets.Add()
Ca devrai marcher.







__________
Kenji

(


Nouveau forum VBA/Office
0
Zachs Messages postés 202 Date d'inscription mardi 14 novembre 2006 Statut Membre Dernière intervention 10 février 2009
3 août 2007 à 12:59
Na marche pas il me met toujours la même erreur

--------------------->>
Ordi, frigo, dodo...
Quelle dur journée!
0
Zachs Messages postés 202 Date d'inscription mardi 14 novembre 2006 Statut Membre Dernière intervention 10 février 2009
3 août 2007 à 13:57
Trop fort ca foncttionne ^^ merci beaucoup

--------------------->>
Ordi, frigo, dodo...
Quelle dur journée!
0
Utilisateur anonyme
3 août 2007 à 14:00
Haaa, j'ai quand même fini par trouver ^^
Tout ca à l'aveugle sans pouvoir tester.




__________
Kenji

(


Nouveau forum VBA/Office
0
Utilisateur anonyme
3 août 2007 à 14:07
"Je ne répondrais pas aux MP s’il s’agit de questions qui peuvent êtres posée dans le forum. Merci."


Ce n'est pas parsque je n'ai pas envis de répondres au question mais parsque j'en recoit beaucoup trop par jours et que beaucoup de ces question aurait une meilleur place dans le forum.

Comment je fais pour déplacer l'onglet de la feuille a suite des autres et non devant ?
Dans la fonction Add, je pense que tu as des paramétres pour definir sa position.

Comment je fais pour supprimer une rectangle (ajouter a l'aide de "Sheet.Shapes.AddShape(Microsoft.Office.Core.MsoAutoShapeType.msoShapeOval, L, T, W, H)")  ?
Soit tu peux ajouter un "name" en paramètre à la fonction AddShape.
Sinon cette fonction te retourne surment l'élement ajouter. Et tu aura un méthode Remove ou Delete.









__________
Kenji

(


Nouveau forum VBA/Office
0
Zachs Messages postés 202 Date d'inscription mardi 14 novembre 2006 Statut Membre Dernière intervention 10 février 2009
3 août 2007 à 14:20
oui il y a une option pour sa position. Mais c'est "Add([Before as object], [After as object], [Count as object], [Type as object]) as object" j'ai deja essayer "add(Feuil3)" "add(globals.feuil3)". Mais ca ne marche pas.

Et mettre un nom aux shapes c'est bon mais il n'y a pas de delete, remove, ou autre methode du genre.

--------------------->>
Ordi, frigo, dodo...
Quelle dur journée!
0
Zachs Messages postés 202 Date d'inscription mardi 14 novembre 2006 Statut Membre Dernière intervention 10 février 2009
3 août 2007 à 14:56
Jai essayer "Add(After:=Globals.Feuil3)
" mais il me dis "Le type ne correspond pas. (Exception de HRESULT : 0x80020005 (DISP_E_TYPEMISMATCH))"

--------------------->>
Ordi, frigo, dodo...
Quelle dur journée!
0
Utilisateur anonyme
3 août 2007 à 17:06
Nan désolé, mais la je ne peux pas.
Je ne dispose pas des ressources nécessaires.







__________
Kenji

(


Nouveau forum VBA/Office
0
Rejoignez-nous