J'"au un script vbs qui ouvre un fichier Excel. Dans ce dernier il y a une
cellule qui contient une formule utilisant SERIE.JOUR.OUVRE et qui nécessite
l'installation de l'utilitaire d'analyse.
Malgré l'installation de cet utilitaire sur le parc de machines et malgré la
mise au minimum du niveau de sécurité (Outils > Macros > Sécurité) voici mon
pb :
Si ouverture du fichier avec le script vbs alors la formule est inactive.
Si ouverture du fichier directement depuis Excel alors la formule est
active.
rajouté dans le script dont voici le code, même résultat !! AU SECOURS !
'------------ Définition des variables ------------------------------------------->
Dim Users, Expert, PathCape Users = "cpa_serveurusers" 'Ne pas oublier le
'------------ Définition des variables -------------------------------------------<
'------------ Boîtes de dialogue INPUT ------------------------------------------->
Expert = InputBox("Entrez les initiales de l'Expert", ":: Ouverture Fiche CAPE ::") If IsEmpty(Expert) Then MsgBox "Vous avez annulé !", 48, "Annulation" Wscript.Quit Else If Len(Expert) = 0 Then MsgBox "Vous n'avez rien saisi !", 16, "ERREUR !" Wscript.Quit End If End If
'---- Ouverture de la FICHE CAPE ------> objExcel.Visible = True objExcel.Workbooks.Open(PathCape) Set currentWorkSheet = objExcel.ActiveWorkBook.Worksheets(1) currentWorkSheet.Activate '---- Ouverture de la FICHE CAPE ------<
'---------- RELEASE MEMORY ---------------------> Set objExcel = Nothing Set currentWorkSheet = Nothing Set Shell = Nothing Wscript.Quit '---------- RELEASE MEMORY ---------------------<
rajouté dans le script dont voici le code, même résultat !!
AU SECOURS !
'------------ Définition des
variables ------------------------------------------->
Dim Users, Expert, PathCape
Users = "\cpa_serveurusers" 'Ne pas oublier le
'------------ Définition des
variables -------------------------------------------<
'------------ Boîtes de dialogue
INPUT ------------------------------------------->
Expert = InputBox("Entrez les initiales de l'Expert", ":: Ouverture Fiche
CAPE ::")
If IsEmpty(Expert) Then
MsgBox "Vous avez annulé !", 48, "Annulation"
Wscript.Quit
Else
If Len(Expert) = 0 Then
MsgBox "Vous n'avez rien saisi !", 16, "ERREUR !"
Wscript.Quit
End If
End If
'---- Ouverture de la FICHE CAPE ------>
objExcel.Visible = True
objExcel.Workbooks.Open(PathCape)
Set currentWorkSheet = objExcel.ActiveWorkBook.Worksheets(1)
currentWorkSheet.Activate
'---- Ouverture de la FICHE CAPE ------<
'---------- RELEASE MEMORY --------------------->
Set objExcel = Nothing
Set currentWorkSheet = Nothing
Set Shell = Nothing
Wscript.Quit
'---------- RELEASE MEMORY ---------------------<
rajouté dans le script dont voici le code, même résultat !! AU SECOURS !
'------------ Définition des variables ------------------------------------------->
Dim Users, Expert, PathCape Users = "cpa_serveurusers" 'Ne pas oublier le
'------------ Définition des variables -------------------------------------------<
'------------ Boîtes de dialogue INPUT ------------------------------------------->
Expert = InputBox("Entrez les initiales de l'Expert", ":: Ouverture Fiche CAPE ::") If IsEmpty(Expert) Then MsgBox "Vous avez annulé !", 48, "Annulation" Wscript.Quit Else If Len(Expert) = 0 Then MsgBox "Vous n'avez rien saisi !", 16, "ERREUR !" Wscript.Quit End If End If
'---- Ouverture de la FICHE CAPE ------> objExcel.Visible = True objExcel.Workbooks.Open(PathCape) Set currentWorkSheet = objExcel.ActiveWorkBook.Worksheets(1) currentWorkSheet.Activate '---- Ouverture de la FICHE CAPE ------<
'---------- RELEASE MEMORY ---------------------> Set objExcel = Nothing Set currentWorkSheet = Nothing Set Shell = Nothing Wscript.Quit '---------- RELEASE MEMORY ---------------------<
NS
Oh put.... Merci bcp Alain tu me sors de la panade !!! Ca marche, wow tu viens de me libérer tu sais pas comment.
merci bcp !! =)
Oh put....
Merci bcp Alain tu me sors de la panade !!!
Ca marche, wow tu viens de me libérer tu sais pas comment.
Oh put.... Merci bcp Alain tu me sors de la panade !!! Ca marche, wow tu viens de me libérer tu sais pas comment.
merci bcp !! =)
Michel Pierron
Re NS; 2 remarques: Du fait que tu ouvres ton fichier Excel au travers d'un script .vbs, tu n'as pas besoin de te préoccuper du niveau de la sécurité des macros; cette restriction est by-passée par cette méthode et tu en as encore moins besoin si ton ficher ne contient pas de macros. Si tu modifies le niveau de sécurité après l'ouverture d'une instance Excel, cette modification n'est pas prise en compte car elle doit intervenir avant l'ouverture du fichier.
Je t'assure que objExcel.AddIns("Utilitaire d'analyse").Installed = True fonctionne; donc ton problème vient d'ailleurs.
MP
"NS" a écrit dans le message de news:
rajouté dans le script dont voici le code, même résultat !! AU SECOURS !
'------------ Définition des variables ------------------------------------------->
Dim Users, Expert, PathCape Users = "cpa_serveurusers" 'Ne pas oublier le
'------------ Définition des variables -------------------------------------------<
'------------ Boîtes de dialogue INPUT ------------------------------------------->
Expert = InputBox("Entrez les initiales de l'Expert", ":: Ouverture Fiche CAPE ::") If IsEmpty(Expert) Then MsgBox "Vous avez annulé !", 48, "Annulation" Wscript.Quit Else If Len(Expert) = 0 Then MsgBox "Vous n'avez rien saisi !", 16, "ERREUR !" Wscript.Quit End If End If
'---- Ouverture de la FICHE CAPE ------> objExcel.Visible = True objExcel.Workbooks.Open(PathCape) Set currentWorkSheet = objExcel.ActiveWorkBook.Worksheets(1) currentWorkSheet.Activate '---- Ouverture de la FICHE CAPE ------<
'---------- RELEASE MEMORY ---------------------> Set objExcel = Nothing Set currentWorkSheet = Nothing Set Shell = Nothing Wscript.Quit '---------- RELEASE MEMORY ---------------------<
Re NS;
2 remarques:
Du fait que tu ouvres ton fichier Excel au travers d'un script .vbs, tu n'as
pas besoin de te préoccuper du niveau de la sécurité des macros; cette
restriction est by-passée par cette méthode et tu en as encore moins besoin
si ton ficher ne contient pas de macros.
Si tu modifies le niveau de sécurité après l'ouverture d'une instance Excel,
cette modification n'est pas prise en compte car elle doit intervenir avant
l'ouverture du fichier.
Je t'assure que objExcel.AddIns("Utilitaire d'analyse").Installed = True
fonctionne; donc ton problème vient d'ailleurs.
MP
"NS" <ns@ns> a écrit dans le message de news:
uifGkzugFHA.576@TK2MSFTNGP15.phx.gbl...
rajouté dans le script dont voici le code, même résultat !!
AU SECOURS !
'------------ Définition des
variables ------------------------------------------->
Dim Users, Expert, PathCape
Users = "\cpa_serveurusers" 'Ne pas oublier le
'------------ Définition des
variables -------------------------------------------<
'------------ Boîtes de dialogue
INPUT ------------------------------------------->
Expert = InputBox("Entrez les initiales de l'Expert", ":: Ouverture Fiche
CAPE ::")
If IsEmpty(Expert) Then
MsgBox "Vous avez annulé !", 48, "Annulation"
Wscript.Quit
Else
If Len(Expert) = 0 Then
MsgBox "Vous n'avez rien saisi !", 16, "ERREUR !"
Wscript.Quit
End If
End If
'---- Ouverture de la FICHE CAPE ------>
objExcel.Visible = True
objExcel.Workbooks.Open(PathCape)
Set currentWorkSheet = objExcel.ActiveWorkBook.Worksheets(1)
currentWorkSheet.Activate
'---- Ouverture de la FICHE CAPE ------<
'---------- RELEASE MEMORY --------------------->
Set objExcel = Nothing
Set currentWorkSheet = Nothing
Set Shell = Nothing
Wscript.Quit
'---------- RELEASE MEMORY ---------------------<
Re NS; 2 remarques: Du fait que tu ouvres ton fichier Excel au travers d'un script .vbs, tu n'as pas besoin de te préoccuper du niveau de la sécurité des macros; cette restriction est by-passée par cette méthode et tu en as encore moins besoin si ton ficher ne contient pas de macros. Si tu modifies le niveau de sécurité après l'ouverture d'une instance Excel, cette modification n'est pas prise en compte car elle doit intervenir avant l'ouverture du fichier.
Je t'assure que objExcel.AddIns("Utilitaire d'analyse").Installed = True fonctionne; donc ton problème vient d'ailleurs.
MP
"NS" a écrit dans le message de news:
rajouté dans le script dont voici le code, même résultat !! AU SECOURS !
'------------ Définition des variables ------------------------------------------->
Dim Users, Expert, PathCape Users = "cpa_serveurusers" 'Ne pas oublier le
'------------ Définition des variables -------------------------------------------<
'------------ Boîtes de dialogue INPUT ------------------------------------------->
Expert = InputBox("Entrez les initiales de l'Expert", ":: Ouverture Fiche CAPE ::") If IsEmpty(Expert) Then MsgBox "Vous avez annulé !", 48, "Annulation" Wscript.Quit Else If Len(Expert) = 0 Then MsgBox "Vous n'avez rien saisi !", 16, "ERREUR !" Wscript.Quit End If End If
'---- Ouverture de la FICHE CAPE ------> objExcel.Visible = True objExcel.Workbooks.Open(PathCape) Set currentWorkSheet = objExcel.ActiveWorkBook.Worksheets(1) currentWorkSheet.Activate '---- Ouverture de la FICHE CAPE ------<
'---------- RELEASE MEMORY ---------------------> Set objExcel = Nothing Set currentWorkSheet = Nothing Set Shell = Nothing Wscript.Quit '---------- RELEASE MEMORY ---------------------<
NS
Alain CROS a réglé mon problème plus haut dans le fil mon code est donc celui-ci et il fonctionne !
'------------ Définition des variables ------------------------------------------->
Dim Users, Expert, PathCape Users = "cpa_serveurusers" 'Ne pas oublier le
'------------ Définition des variables -------------------------------------------<
'------------ Boîtes de dialogue INPUT ------------------------------------------->
Expert = InputBox("Entrez les initiales de l'Expert", ":: Ouverture Fiche CAPE ::") If IsEmpty(Expert) Then MsgBox "Vous avez annulé !", 48, "Annulation" Wscript.Quit Else If Len(Expert) = 0 Then MsgBox "Vous n'avez rien saisi !", 16, "ERREUR !" Wscript.Quit End If End If
'-------------------- Traitement de la Fiche CAPE EXPERT -------------------------> PathCape = Users & Expert & "" & "_AXA CS Cape_" & "" & "2005 RéCAPE " & Ucase(Expert) & ".xls" Dim objExcel, currentWorkSheet, Activeworkbook, VersionExcel, SecurityKey Set objExcel = CreateObject("Excel.Application") With objExcel If .AddIns("Utilitaire d'analyse").Installed Then .AddIns("Utilitaire d'analyse").Installed = False End If .AddIns("Utilitaire d'analyse").Installed = True .Workbooks.Open PathCape .Visible = True End With
Set currentWorkSheet = objExcel.ActiveWorkBook.Worksheets(1) currentWorkSheet.Activate
'---------- RELEASE MEMORY ---------------------> Set objExcel = Nothing Set currentWorkSheet = Nothing Set Shell = Nothing Wscript.Quit '---------- RELEASE MEMORY ---------------------<
Alain CROS a réglé mon problème plus haut dans le fil mon code est donc
celui-ci et il fonctionne !
'------------ Définition des
variables ------------------------------------------->
Dim Users, Expert, PathCape
Users = "\cpa_serveurusers" 'Ne pas oublier le
'------------ Définition des
variables -------------------------------------------<
'------------ Boîtes de dialogue
INPUT ------------------------------------------->
Expert = InputBox("Entrez les initiales de l'Expert", ":: Ouverture Fiche
CAPE ::")
If IsEmpty(Expert) Then
MsgBox "Vous avez annulé !", 48, "Annulation"
Wscript.Quit
Else
If Len(Expert) = 0 Then
MsgBox "Vous n'avez rien saisi !", 16, "ERREUR !"
Wscript.Quit
End If
End If
Alain CROS a réglé mon problème plus haut dans le fil mon code est donc celui-ci et il fonctionne !
'------------ Définition des variables ------------------------------------------->
Dim Users, Expert, PathCape Users = "cpa_serveurusers" 'Ne pas oublier le
'------------ Définition des variables -------------------------------------------<
'------------ Boîtes de dialogue INPUT ------------------------------------------->
Expert = InputBox("Entrez les initiales de l'Expert", ":: Ouverture Fiche CAPE ::") If IsEmpty(Expert) Then MsgBox "Vous avez annulé !", 48, "Annulation" Wscript.Quit Else If Len(Expert) = 0 Then MsgBox "Vous n'avez rien saisi !", 16, "ERREUR !" Wscript.Quit End If End If