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

Visual BAsic alt +pf11 bloquer

3 réponses
Avatar
Aiwa
Bonjour j'ai un fichier et j'aimerais pouvoir bloquer l'acces
au visual basic car la-dedans j'ai une macro et dans celle-ci il y a un
enlever mot passe et remettre mot de passe, donc j'aimerais pourvoir bloquer
l'acces.

Merci à l'avance

3 réponses

Avatar
MichDenis
Essaie ça pour le plaisir !

'les raccourcis clavier pour ouvrir la fenêtre des macro et VBE seront désactivées
'Impossible de créer de nouvelle macro
'impossible d'ouvrir la fenêtre VBE

Dans le ThisWorkbook, copie ceci :
'------------------
Private Sub Workbook_BeforeClose(Cancel As Boolean)
OuvrirFenêtreVBE
End Sub
'------------------
Private Sub Workbook_Open()
InterdireFenêtreVBE
End Sub
'------------------

Copie ce qui suit dans des modules Standard :
'------------------------------------
Sub InterdireFenêtreVBE()

With Application
.OnKey "%{F11}", ""
.OnKey "%{F8}", ""
End With

For Each ctrl In Application.CommandBars.FindControls(ID:4)
ctrl.Enabled = False
ctrl.Visible = False
ctrl.OnAction = "Rien"
Next

For Each ctrl In Application.CommandBars.FindControls(ID:6)
ctrl.Enabled = False
ctrl.Visible = False
ctrl.OnAction = "Rien"
Next
For Each ctrl In Application.CommandBars.FindControls(ID:95)
ctrl.Enabled = False
ctrl.Visible = False
ctrl.OnAction = "Rien"
Next

End Sub

'--------------
Sub OuvrirFenêtreVBE()

With Application
.OnKey "%{F11}"
.OnKey "%{F8}"
End With

For Each ctrl In Application.CommandBars.FindControls(ID:4)
ctrl.Enabled = True
ctrl.Visible = True
ctrl.OnAction = ""
Next

For Each ctrl In Application.CommandBars.FindControls(ID:6)
ctrl.Enabled = True
ctrl.Visible = True
ctrl.OnAction = ""
Next
For Each ctrl In Application.CommandBars.FindControls(ID:95)
ctrl.Enabled = True
ctrl.Visible = True
ctrl.OnAction = ""
Next

End Sub
'--------------
Sub Rien()

End Sub
'--------------












"Aiwa" a écrit dans le message de news:

Bonjour j'ai un fichier et j'aimerais pouvoir bloquer l'acces
au visual basic car la-dedans j'ai une macro et dans celle-ci il y a un
enlever mot passe et remettre mot de passe, donc j'aimerais pourvoir bloquer
l'acces.

Merci à l'avance
Avatar
Aiwa
Rebonjour, je pensais qu'on pouvais le faire sans macro avant de protéger mon
fichier
J'ai un onglet index avec des lien pour les autres onglet, il sont tous
protégez par mot de passe individuel mais avec le même mot de passe.
Ta macro fonctionne tu juste quand le ficher est vérouiller ? car je veut
avoir acces encore pour faire des modification .
Que veut tu dire par modules standard


Essaie ça pour le plaisir !

'les raccourcis clavier pour ouvrir la fenêtre des macro et VBE seront désactivées
'Impossible de créer de nouvelle macro
'impossible d'ouvrir la fenêtre VBE

Dans le ThisWorkbook, copie ceci :
'------------------
Private Sub Workbook_BeforeClose(Cancel As Boolean)
OuvrirFenêtreVBE
End Sub
'------------------
Private Sub Workbook_Open()
InterdireFenêtreVBE
End Sub
'------------------

Copie ce qui suit dans des modules Standard :
'------------------------------------
Sub InterdireFenêtreVBE()

With Application
.OnKey "%{F11}", ""
.OnKey "%{F8}", ""
End With

For Each ctrl In Application.CommandBars.FindControls(ID:4)
ctrl.Enabled = False
ctrl.Visible = False
ctrl.OnAction = "Rien"
Next

For Each ctrl In Application.CommandBars.FindControls(ID:6)
ctrl.Enabled = False
ctrl.Visible = False
ctrl.OnAction = "Rien"
Next
For Each ctrl In Application.CommandBars.FindControls(ID:95)
ctrl.Enabled = False
ctrl.Visible = False
ctrl.OnAction = "Rien"
Next

End Sub

'--------------
Sub OuvrirFenêtreVBE()

With Application
.OnKey "%{F11}"
.OnKey "%{F8}"
End With

For Each ctrl In Application.CommandBars.FindControls(ID:4)
ctrl.Enabled = True
ctrl.Visible = True
ctrl.OnAction = ""
Next

For Each ctrl In Application.CommandBars.FindControls(ID:6)
ctrl.Enabled = True
ctrl.Visible = True
ctrl.OnAction = ""
Next
For Each ctrl In Application.CommandBars.FindControls(ID:95)
ctrl.Enabled = True
ctrl.Visible = True
ctrl.OnAction = ""
Next

End Sub
'--------------
Sub Rien()

End Sub
'--------------












"Aiwa" a écrit dans le message de news:

Bonjour j'ai un fichier et j'aimerais pouvoir bloquer l'acces
au visual basic car la-dedans j'ai une macro et dans celle-ci il y a un
enlever mot passe et remettre mot de passe, donc j'aimerais pourvoir bloquer
l'acces.

Merci à l'avance





Avatar
MichDenis
Tu peux protéger ton code par :

a ) Ouverture de la fenêtre de l'éditeur de code
b ) un clic droit sur ton fichier dans le ProjetVBA
et tu utilises la commande propriété de vbaproject
et onglet Protection - tu peux insérer un mot de passe
c ) le code devient cependant inaccessible seulement après
avoir fermé le fichier et l'avoir rouvert

Ce que je t'ai proposé, c était pour répondre a ta demande
d'empêcher l'ouverture de la fenêtre VEB lorsqu'excel est ouvert.

Cependant, tu peux ajouter une petite macro auquel tu as pris soin
d'associer un raccourci clavier dont tu serais le seul a connaitre. cette
macro pourrait être simplement :

'-----------
Sub Ouvrir_Fenêtre_VBA()
ThisWorkbook.VBProject.VBE.MainWindow.Visible = True
'-----------

Utilise un fichier vierge et teste les différentes possibilités selon ce que tu désires réellement.


"Aiwa" a écrit dans le message de news:

Rebonjour, je pensais qu'on pouvais le faire sans macro avant de protéger mon
fichier
J'ai un onglet index avec des lien pour les autres onglet, il sont tous
protégez par mot de passe individuel mais avec le même mot de passe.
Ta macro fonctionne tu juste quand le ficher est vérouiller ? car je veut
avoir acces encore pour faire des modification .
Que veut tu dire par modules standard


Essaie ça pour le plaisir !

'les raccourcis clavier pour ouvrir la fenêtre des macro et VBE seront désactivées
'Impossible de créer de nouvelle macro
'impossible d'ouvrir la fenêtre VBE

Dans le ThisWorkbook, copie ceci :
'------------------
Private Sub Workbook_BeforeClose(Cancel As Boolean)
OuvrirFenêtreVBE
End Sub
'------------------
Private Sub Workbook_Open()
InterdireFenêtreVBE
End Sub
'------------------

Copie ce qui suit dans des modules Standard :
'------------------------------------
Sub InterdireFenêtreVBE()

With Application
.OnKey "%{F11}", ""
.OnKey "%{F8}", ""
End With

For Each ctrl In Application.CommandBars.FindControls(ID:4)
ctrl.Enabled = False
ctrl.Visible = False
ctrl.OnAction = "Rien"
Next

For Each ctrl In Application.CommandBars.FindControls(ID:6)
ctrl.Enabled = False
ctrl.Visible = False
ctrl.OnAction = "Rien"
Next
For Each ctrl In Application.CommandBars.FindControls(ID:95)
ctrl.Enabled = False
ctrl.Visible = False
ctrl.OnAction = "Rien"
Next

End Sub

'--------------
Sub OuvrirFenêtreVBE()

With Application
.OnKey "%{F11}"
.OnKey "%{F8}"
End With

For Each ctrl In Application.CommandBars.FindControls(ID:4)
ctrl.Enabled = True
ctrl.Visible = True
ctrl.OnAction = ""
Next

For Each ctrl In Application.CommandBars.FindControls(ID:6)
ctrl.Enabled = True
ctrl.Visible = True
ctrl.OnAction = ""
Next
For Each ctrl In Application.CommandBars.FindControls(ID:95)
ctrl.Enabled = True
ctrl.Visible = True
ctrl.OnAction = ""
Next

End Sub
'--------------
Sub Rien()

End Sub
'--------------












"Aiwa" a écrit dans le message de news:

Bonjour j'ai un fichier et j'aimerais pouvoir bloquer l'acces
au visual basic car la-dedans j'ai une macro et dans celle-ci il y a un
enlever mot passe et remettre mot de passe, donc j'aimerais pourvoir bloquer
l'acces.

Merci à l'avance