Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Besoin d'aide sur script vbs !

4 réponses
Avatar
NS
Bonjour,

Je ne trouve pas mon erreur dans ce code :

Dim objExcel, currentWorkSheet, Activeworkbook
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
objExcel.Workbooks.Open(PathCape)
ActiveWorkbook.RunAutoMacros xlAutoOpen
Set currentWorkSheet = objExcel.ActiveWorkBook.Worksheets(1)

J'ai une erreur à la ligne 5 -> Objet requis : "

Je ne comprends pas et fais appel à vous, merci à tous pour votre aide!

4 réponses

Avatar
François Rivierre
Bonjour,

Remplacez votre ligne 5 par :

objExcel.ActiveWorkbook.RunAutoMacros xlAutoOpen

Je pense qu'il ne doit pas être possible d'invoquer directement
ActiveWorkbook sans passer par l'objet objExcel.

Cordialement,

François RIVIERRE

Je ne trouve pas mon erreur dans ce code :

Dim objExcel, currentWorkSheet, Activeworkbook
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
objExcel.Workbooks.Open(PathCape)
ActiveWorkbook.RunAutoMacros xlAutoOpen
Set currentWorkSheet = objExcel.ActiveWorkBook.Worksheets(1)

J'ai une erreur à la ligne 5 -> Objet requis : "

Je ne comprends pas et fais appel à vous, merci à tous pour votre
aide!


Avatar
NS
Merci pour votre aide.
Mais à présent j'ai l'erreur suivante :

La méthode RunAutoMacros de la classe Workbook a échoué

Kézako ?
Avatar
~Jean-Marc~ [MVP]
Salutations *NS* !
Dans <news:
tu nous disais :
Merci pour votre aide.
Mais à présent j'ai l'erreur suivante :

La méthode RunAutoMacros de la classe Workbook a échoué

Kézako ?


Essaye en remplaçant xlAutoOpen par 1 :

Dim objExcel, currentWorkSheet, Activeworkbook
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
objExcel.Workbooks.Open(PathCape)
objExcel.ActiveWorkbook.RunAutoMacros 1
Set currentWorkSheet = objExcel.ActiveWorkBook.Worksheets(1)

@+

--
~Jean-Marc~ MSAE & MVP Windows XP Fr
M'écrire : http://msmvps.com/docxp/contact.aspx
- http://docxp.mvps.org - http://msmvps.com/docxp/ -
Aide en DIRECT sur Internet : http://communautes-ms.akro-net.org/

Avatar
François Rivierre
Essaye en remplaçant xlAutoOpen par 1 :

Dim objExcel, currentWorkSheet, Activeworkbook
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
objExcel.Workbooks.Open(PathCape)
objExcel.ActiveWorkbook.RunAutoMacros 1
Set currentWorkSheet = objExcel.ActiveWorkBook.Worksheets(1)


Pour info (et en complément à la suggestion de Jean-Marc) : ces constantes
propres à Excel ont la valeur suivante :

xlAutoOpen : 1
xlAutoClose : 2
xlAutoActivate : 3
xlAutoDeactivate : 4

Il est possible d'utiliser directement ces noms de constantes dans ton
script en les déclarant au début, par exemple :

Const xlAutoOpen = 1

De cette manière, ton code original aurait marché.

Pour trouver les valeurs des constantes internes à Excel, il suffit d'ouvrir
l'éditeur VBA d'Excel (alt+F11 depuis Excel), d'afficher l'explorateur
d'objets ("Affichage" -> "Explorateur d'objets", ou F2), puis de taper le
nom de la constante dans la zone de recherche. Lorsqu'on sélectionne la
constante dans la zone de résultat, les détails (dont la valeur de la
constante) s'affichent en bas.

En espérant que ça aide,

François