2009-10-22 9 views
2

je le script VBS suivant de Microsoft Support pour ajouter add-in Excel:Comment faire pour exécuter le script VBS à partir de cmd?

Dim oXL As Object 
Dim oAddin As Object 
Set oXL = CreateObject("Excel.Application") 
oXL.Workbooks.Add 
Set oAddin = oXL.AddIns.Add("c:\Program Files\MyApp\MyAddin.xla", True) 
oAddin.Installed = True 
oXL.Quit 
Set oXL = Nothing 

j'enregistrer le script ci-dessus dans un fichier appelé addin.vbs et l'exécuter à partir d'une console de commande:

C:\...>cscript addin.vbs 

j'ai eu l'erreur suivante:

c:\...\addin.vbs(1, 9) Microsoft VBScript compilation error: Expected end of statement 

Je ne sais pas comment je peux l'exécuter à partir de la console cmd?

Je l'exécute à partir de Windows XP.

Répondre

5

Visual Basic pour Applications (VBA, dans lequel votre code est écrit) et Visual Basic Scripting Edition (VBS) ne sont pas le même langage.

Windows Scripting Host (WSH, à savoir cscript.exe et wscript.exe) traite uniquement les langues Active Scripting (dans la plupart des installations, VBScript et JScript). VBA ne peut être exécuté que dans l'application destinée à l'héberger. Il suffit de suivre les instructions sur la page de support de Microsoft que vous avez et d'ajouter le script à Excel.

+0

Je vois. Est-il possible de convertir en codes VBS et l'exécuter à partir de cmd? –

+0

Je pense que cela nécessitera de créer Excel obj avec WS et plus de codes .. –

3

L'erreur se produit en raison de la clause As Object. Contrairement à VBA, VBScript n'a qu'un seul type de données - Variant, donc vous ne spécifiez pas le type de données lors de la déclaration d'une variable. Supprimer les clauses As Object et le script devrait fonctionner correctement:

Dim oXL, oAddin 
Set oXL = CreateObject("Excel.Application") 
oXL.Workbooks.Add 
Set oAddin = oXL.AddIns.Add("c:\Program Files\MyApp\MyAddin.xla", True) 
oAddin.Installed = True 
oXL.Quit 
Set oXL = Nothing 
+0

Celui-ci fonctionne sans aucune erreur. Cependant, je n'arrive pas à comprendre comment l'activer (cochez-la dans la fenêtre du Gestionnaire de compléments) ou décochez-la. Vous n'êtes pas certain des codes pour y parvenir? –

Questions connexes