antoine_ferard
Messages postés222Date d'inscriptionmercredi 5 avril 2006StatutMembreDernière intervention18 février 2011
-
23 avril 2007 à 12:12
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 2018
-
24 avril 2007 à 23:17
afin de pouvoir utiliser les macros, j'aimerais à l'ouverture du fichier excel, que les sécurité se mettent automatiquement au minimum.... soit dans "Private Sub Workbook_Open()", quelle serait la fonction à utiliser pour définir la sécurité au minimum ? :-/
cs_JMO
Messages postés1854Date d'inscriptionjeudi 23 mai 2002StatutMembreDernière intervention24 juin 201827 23 avril 2007 à 12:44
Bonjour,
En vbs, l'exemple ci-dessous permet de créer une macro ......
Set objWsh = WScript.CreateObject("WScript.Shell")
on error resume next
objWsh.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Excel\Security\accessVBOM",1,"REG_DWORD"
on error goto 0
Set objExcel = WScript.CreateObject("Excel.Application")
objExcel.Visible = False
set objClasseur=objExcel.Workbooks.Add
Set mdle = objClasseur.VBProject.VBComponents.Add(1)
num=0
num=num+1:mdle.CodeModule.InsertLines num, "Declare Function GetDC Lib ""user32"" (ByVal hwnd As Long) As Long"
Pour Access, j'ai trouvé "oAccess.AutomationSecurity=1", existe-t-il l'équivalent pour Excel ???
antoine_ferard
Messages postés222Date d'inscriptionmercredi 5 avril 2006StatutMembreDernière intervention18 février 20113 23 avril 2007 à 13:03
charles racaud > on peut changer la sécurité encore plus facilement en passant par les menus de Excel, mais c'est "galère" pour l'utilisateur... donc je préférerais que ça se fasse automatiquement par le code à l'ouverture du fichier...
drikce06
Messages postés2236Date d'inscriptionlundi 29 mai 2006StatutMembreDernière intervention29 mai 200810 23 avril 2007 à 13:05
Oui mais de toute façon pour que t'as macro se lance il faut déjà que le niveau de sécurité soit faible donc pas d'autre solution que de le faire par les menus!
Drikce 06
Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:
Vous n’avez pas trouvé la réponse que vous recherchez ?
Je sais très bien que cette sécurité peut être changé mais par la validation de l'utilisateur.
Si cette sécurité existe, c'est justement pour éviter que des macro dangeureusent ne casse tout.
antoine_ferard
Messages postés222Date d'inscriptionmercredi 5 avril 2006StatutMembreDernière intervention18 février 20113 23 avril 2007 à 14:01
oui mais dans le fichier bien précis que j'ai développé, tu vas me dire qu'à l'ouverture du fichier il n'est pas possible de coder la sécurité à "faible" ? :-/ merci qu'en-même pour le tps d'écriture de vos messages, et vos idées... dès que j'ai un peu de temps je cherche et je met la réponse... pêut-être comme à di JMO : "oAccess.AutomationSecurity=1" mais pour excel, un truc dans le genre, qui se placerait à l'ouverture du fichier soit dans la procédure "Private Sub Workbook_Open()"
drikce06
Messages postés2236Date d'inscriptionlundi 29 mai 2006StatutMembreDernière intervention29 mai 200810 23 avril 2007 à 14:12
Car avant même le lancement de cet évènement tu es bloqué par le niveau de sécurité! A la rigueur la solution serai de le faire via une autre application qui ouvre excel, par exemple VBA word, et qui modifie cette option, mais j'ai de gros doute sur cette possibilité, tant qu'en pertinence, qu'en faisabilité!
Drikce 06
Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:
cs_lermite222
Messages postés492Date d'inscriptionjeudi 5 avril 2007StatutMembreDernière intervention 2 juillet 20124 23 avril 2007 à 17:35
Bonjour,
le problème c'est que le niveau de sécurité n'est pas déterminer dans les classeurs mais dans l'application, donc si changement, changement dans tout les classeurs.
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 24 avril 2007 à 00:12
Salut,
très difficile à faire, j'ai déjà tenté ;)
Par contre, ce qui me fait sourire : (pas testé) je me demande si par l'intermédiaire de VB6 on ne peut pas "changer" la sécurité. VB6 pilote l'application, et n'a rien à voir avec la sécurité des macros. Va savoir.
Sinon, pas cherché dans ce domaine, mais n'y aurait-il pas une clé dans le registre ?
(tu me diras, ce serait trop facile, mais sait-on jamais)
@++
<hr width="100%" size="2" />
--Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 24 avril 2007 à 12:12
Mortalino, qu'est-ce que tu entends par difficile à faire ?
En fait, je ne parle pas de créer des signatures par code (je ne sais même pas si c'est possible...), mais d'en créer une, une seule fois, quitte à expliquer aux usagers comment faire, et ensuite, les macros devraient passer sans problème, malgré la sécurité..., non ?
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 24 avril 2007 à 23:17
Effectivement, pour la sécurité vaut mieux oublier ça... sinon à quoi ça servirait ?!
Si jamais quelqu'un est capable de changer mon niveau de sécurité, j'appelle Bill personnellement pour me faire rembourser... héhé ¦¬)