Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

procédure vba coincée sur la fenêtre option d'un classeur

3 réponses
Avatar
pirot
bonjour,
pour pouvoir mettre =E0 jour le code vba d'un autre classeur,
le code vba doit cocher ou d=E9cocher l'option:
outils/options/s=E9curit=E9/s=E9curit=E9 des macros/faire confiance au proj=
et
visual basic
(si coch=E9, la proc=E9dure d=E9coche et si d=E9coch=E9 elle coche)
la proc=E9dure suivante le fait (excel 2003), mais la fen=EAtre option
reste ouverte et non active apr=E8s avoir coch=E9 ou d=E9coch=E9 ce qu'il
faut.
je ne sais pas rendre le focus =E0 la fen=EAtre option pour valider OK
-------------------------------------------------------
Sub tt()
SendKeys "%o"
SendKeys "o"
SendKeys "s"
SendKeys "%s"
SendKeys "d"
SendKeys "%r"
SendKeys "{ENTER}"
Range("C9").Select
SendKeys "{ENTER}"
End Sub
--------------------------------------------------
si vous voyez...
merci de vos r=E9ponses
pirot

3 réponses

Avatar
Daniel.C
Bonjour.
A mon avis, c'est le "Range("C9").Select" qui bloque :

Sub tt()
SendKeys "%o"
SendKeys "o"
SendKeys "s"
SendKeys "%s"
SendKeys "d"
SendKeys "%r"
SendKeys "{ENTER}"
SendKeys "{ENTER}"
End Sub

Daniel

bonjour,
pour pouvoir mettre à jour le code vba d'un autre classeur,
le code vba doit cocher ou décocher l'option:
outils/options/sécurité/sécurité des macros/faire confiance au projet
visual basic
(si coché, la procédure décoche et si décoché elle coche)
la procédure suivante le fait (excel 2003), mais la fenêtre option
reste ouverte et non active après avoir coché ou décoché ce qu'il
faut.
je ne sais pas rendre le focus à la fenêtre option pour valider OK
-------------------------------------------------------
Sub tt()
SendKeys "%o"
SendKeys "o"
SendKeys "s"
SendKeys "%s"
SendKeys "d"
SendKeys "%r"
SendKeys "{ENTER}"
Range("C9").Select
SendKeys "{ENTER}"
End Sub
--------------------------------------------------
si vous voyez...
merci de vos réponses
pirot
Avatar
pirot
On 12 mar, 10:13, Daniel.C wrote:
Bonjour.
A mon avis, c'est le "Range("C9").Select" qui bloque :



bonjour,
ben non le range ne bloque pas, au contraire: sinon outils/options
devient inactif jusqu'à ce qu'on clique dans une cellule
il y a perte de focus de la boitre de dialogue options.
"à la main" ALT s" redonne le focus, mais vba ne le fait pas
@+
pirot
Avatar
michdenis
Bonjour

Ce qui suit est un vbscript que tu peux copier dans
l'application NotePad et que tu sauvegardes en t'assurant
que l'extension du fichier est .VBS

Pour modifier le niveau de sécurité et cocher les 2 petites
cases dans la fenêtre de l'éditeur approuvé, il ne te reste
plus qu'à double-cliquer sur le fichier dans l'explorateur
Windows. Le niveau de sécurité est réglé sur le niveau 2.


'Excel Doit être fermé
'------------------------------------------
Dim wsh, objXl

'Pour s'assurer qu'excel n'est pas ouvert.

On Error Resume Next
Set objXl=GetObject(,"Excel.Application")
If Not IsEmpty(objXl) Then
Msgbox "Fermer excel pour exécuter ce scr1pt...",64,"La direction"
WScript.Quit
else
Set objxl=createobject("Excel.Application")
Ver = objxl.Version
set objxl = nothing
End If
Err.Clear


Set wsh = WScript.CreateObject("WScript.Shell")

'Niveau de sécurité 2 pour 2ième niveau
wsh.RegWrite "HKCUSoftwareMicrosoftOffice" & _
Ver & "ExcelSecurityLevel",2,"REG_DWORD"

if ver >= 10 and ver <= 12 then 'Faire confiance au projet VBA -> 1 pour que la case soit cochée
' -> 0 pour que la case soit décochée
wsh.RegWrite "HKCUSoftwareMicrosoftOffice" & _
Ver & "ExcelSecurityaccessVBOM",1,"REG_DWORD"

'Faire confiance au modèle -> 0 pour que la case soit cochée
' -> 1 pour que la case soit décochée
wsh.RegWrite "HKCUSoftwareMicrosoftOffice" & _
Ver & "ExcelSecurityDontTrustInstalledFiles",0,"REG_DWORD"
end if
'------------------------------------------







"pirot" a écrit dans le message de groupe de discussion :

bonjour,
pour pouvoir mettre à jour le code vba d'un autre classeur,
le code vba doit cocher ou décocher l'option:
outils/options/sécurité/sécurité des macros/faire confiance au projet
visual basic
(si coché, la procédure décoche et si décoché elle coche)
la procédure suivante le fait (excel 2003), mais la fenêtre option
reste ouverte et non active après avoir coché ou décoché ce qu'il
faut.
je ne sais pas rendre le focus à la fenêtre option pour valider OK
-------------------------------------------------------
Sub tt()
SendKeys "%o"
SendKeys "o"
SendKeys "s"
SendKeys "%s"
SendKeys "d"
SendKeys "%r"
SendKeys "{ENTER}"
Range("C9").Select
SendKeys "{ENTER}"
End Sub
--------------------------------------------------
si vous voyez...
merci de vos réponses
pirot