Re le fil
Bon là j'avoue je bloque mais bon c normal suis pas non plus une bête de compétition
Voici le code... si quelqu'un veut essayer, je tente de corriger les erreurs mais bon c pas gagné
'Excel doit être fermé
On Error Resume Next
Set objXl=GetObject(,'Excel.Application')
If Not IsEmpty(objXl) Then
Msgbox 'Excel doit être fermé pour exécuter ce script...'
WScript.Quit
End If
Err.Clear
Dim acces_shell
Dim cle As String
Set acces_shell = CreateObjectwscript('Wscript.Shell')
Cle2003 = 'HKEY_CURRENT_USER\\Software\\Microsoft\\Office\\11.0\\Excel\\Security\\Level'
If Not IsExcel2003 Then
MsgBox 'Ce script ne peut désactiver l'alerte macro que pour Excel 2003...'
WScript.Quit
End If
Dim NiveauSecurite, acces_shell
'niveau de sécurité en début d'exécution
NiveauSecurite = acces_shell.RegRead(Cle2003)
'changement pour le niveau le plus faible
acces_shell.RegWrite Cle2003, 1,'REG_DWORD'
'ouverture du classeur sans alerte macro
Retour=acces_shell.Run('C:\\Documents and Settings\\morozofc\\Bureau', 3, False)
'rétablissement du niveau de sécurité de départ
acces_shell.RegWrite Cle2003, NiveauSecurite,'REG_DWORD'
'pour vérifier si la clé pour Excel 2003 existe bien
Function IsExcel2003()
On Error Resume Next
Res=acces_shell.RegRead(Cle2003)
IsExcel2003=(Err=0)
End Function