[VBS] Ouverture fichier excel avec mot de passe

PHP, JavaScript, Python, C#, VB.NET, C++, etc, y compris d'autres types de langages (HTML, CSS, SQL)
R
Rag02700
Membre fidèle
Membre fidèle
Messages : 323
Appréciations reçues : 4
Inscrit le : 26 décembre 2017
Version d'Excel : 2010

Message par Rag02700 » 14 mars 2019, 11:35

Hello,

J'ai un fichier excel avec un mot de passe à l'ouverture.

Je veux l'ouvrir depuis un fichier .vbs qui comporte ce code :
Option Explicit

On Error Resume Next

ExempleMacroExcel

Sub ExempleMacroExcel() 

  

Dim ApplicationExcel 
  
Dim ClasseurExcel 

  

Set ApplicationExcel = CreateObject("Excel.Application") 
  
Set ClasseurExcel = ApplicationExcel.Workbooks.Open "C:\OSCAR_19\Doublons février 2019.xlsx", , "toto" 
  

ApplicationExcel.Visible = True   'les actions seront visibles. Pour tout lancer en arrière-plan, remplacer True par False
  
'ApplicationExcel.Run "MAJ_Listes" 'va lancer la macro "MacroTest1"
  
'ApplicationExcel.Quit 

  

'Set ClasseurExcel = Nothing 
  
'Set ApplicationExcel = Nothing 



End Sub
Cela me génère une erreur à la ligne 19, caract 53, code 800A0401, Source Erreur de compilation Microsoft VBScript.

Pouvez-vous m'aider svp ?

Merci à vous.

R@g
Avatar du membre
ric
Membre impliqué
Membre impliqué
Messages : 1'969
Appréciations reçues : 162
Inscrit le : 29 mai 2018
Version d'Excel : 365 fr

Message par ric » 14 mars 2019, 18:15

Bonjour,

Un essai ...
Option Explicit

'''On Error Resume Next

'''ExempleMacroExcel

Sub ExempleMacroExcel()
Dim ApplicationExcel

Set ApplicationExcel = CreateObject("Excel.Application")

Excel.Workbooks.Open "C:\OSCAR_19\Doublons février 2019.xlsx", Password:="toto"

ApplicationExcel.Visible = True   'les actions seront visibles. Pour tout lancer en arrière-plan, remplacer True par False
  
'ApplicationExcel.Run "MAJ_Listes" 'va lancer la macro "MacroTest1"
  
'ApplicationExcel.Quit
  

'Set ClasseurExcel = Nothing
  
'Set ApplicationExcel = Nothing

End Sub




ric
Un bon dépanneur : la touche F8 pour faire un Pas-à-Pas sur le code. :mrgreen:
R
Rag02700
Membre fidèle
Membre fidèle
Messages : 323
Appréciations reçues : 4
Inscrit le : 26 décembre 2017
Version d'Excel : 2010

Message par Rag02700 » 14 mars 2019, 19:55

Hello Ric,


Merci pour ta réponse.
J'ai toujours la même erreur en ajoutant password... ::( ::(

R@g
Avatar du membre
ric
Membre impliqué
Membre impliqué
Messages : 1'969
Appréciations reçues : 162
Inscrit le : 29 mai 2018
Version d'Excel : 365 fr

Message par ric » 15 mars 2019, 13:45

Bonjour,

Je m'excuse de ne pas avoir bien lu ta demande. J'ai confondu .vbs et vba. :oops:

J'ai quand même fait des recherches et quelques tests ... sans succès.




ric
Un bon dépanneur : la touche F8 pour faire un Pas-à-Pas sur le code. :mrgreen:
m
m3ellem1
Membre dévoué
Membre dévoué
Messages : 904
Appréciations reçues : 68
Inscrit le : 18 décembre 2018
Version d'Excel : 2016

Message par m3ellem1 » 7 avril 2019, 03:08

Slt Rag,

je sais pas est ce que t'as trouvé la solution ou pas, sinon essaie comme ca
Option Explicit

On Error Resume Next

ExempleMacroExcel

Sub ExempleMacroExcel() 

  

Dim ApplicationExcel 
  
Dim ClasseurExcel 

  

Set ApplicationExcel = CreateObject("Excel.Application") 
  
Set ClasseurExcel = ApplicationExcel.Workbooks.Open ("C:\OSCAR_19\Doublons février 2019.xlsx",,,,"toto") 
  

ApplicationExcel.Visible = True   'les actions seront visibles. Pour tout lancer en arrière-plan, remplacer True par False
  
'ApplicationExcel.Run "MAJ_Listes" 'va lancer la macro "MacroTest1"
  
'ApplicationExcel.Quit 

  

'Set ClasseurExcel = Nothing 
  
'Set ApplicationExcel = Nothing 



End Sub
Avatar du membre
Xmenpl
Membre impliqué
Membre impliqué
Messages : 1'926
Appréciations reçues : 117
Inscrit le : 16 mai 2018
Version d'Excel : 2003 à 2013

Message par Xmenpl » 13 août 2019, 14:53

BOnjour,

il ne manque pas des parenthèse sur cette ligne ?

Excel.Workbooks.Open "C:\OSCAR_19\Doublons février 2019.xlsx", Password:="toto"
Set ClasseurExcel = ApplicationExcel.Workbooks.Open ("C:\OSCAR_19\Doublons février 2019.xlsx", Password:="toto")


et les variables ce n'est pas ? :
Dim ApplicationExcel As Excel.Application

Dim ClasseurExcel  As Excel.worbook
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message