XL 2019 Comment empêcher l'ouverture d'un fichier Excel, si les macros ne sont pas activés sur le pc

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

abi_71@

XLDnaute Junior
Bonjour à tous,

J'ai un fichier dont à l'ouverture il a deux étapes de login (le code VBA ci-dessous dans "Thisworkbook") et en testant mon fichier sur un autre PC (les macros été désactivé sous Excel "heureusement") en ouvrant mon fichier j'ai eu accès directement à mon classeur et mes feuilles sans passer par login et mot de passe, le défit est de comment interdire l'ouverture d'un fichier Excel si les macros ne sont pas activés sur le pc utilisé.

Option Explicit

Private Sub Workbook_Open()
Feuil13.Activate
Range("P9").Activate
[_utilisateur] = "Invité"
Connecter
Alimenter_Combo
Application.DisplayFullScreen = True
Dim Y, s
ActiveSheet.Protect UserInterfaceOnly:=True
On Error Resume Next
Y = Application.CommandBars.Item("Ribbon").Visible
s = IIf(Y, "False", "True")
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon""," & s & ")"

End Sub

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim cellule As Range
For Each cellule In [_rubriques]
If cellule = Sh.Name Then

If Not cellule.Offset(0, 1) = True Then

Feuil13.Activate
MsgBox "L'accès interdit"
End If

End If
Next
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)

ThisWorkbook.Save
End Sub


Je vous remercie d'avance,

Cordialement,
 
Solution
Bonjour,

Masque les feuilles que tu veux rendre invisibles, puis onglet Révision -> Protéger le classeur.
A l'ouverture, l'utilisateur ne verra que ce que tu lui montres, et ne pourra pas ouvrir les feuilles masquées.

Bonne journée,
Bonjour ...
t'as pas cherché sur le forum ?
ex :

 
Dernière édition:
Bonjour,

Masque les feuilles que tu veux rendre invisibles, puis onglet Révision -> Protéger le classeur.
A l'ouverture, l'utilisateur ne verra que ce que tu lui montres, et ne pourra pas ouvrir les feuilles masquées.

Bonne journée,
Bonjour,

Ici l'idée n'est pas de masqué des feuilles mais plutôt de forcer le classeur à ne pas s'ouvrir si les macros sont désactivé car j'ai un double connexion.

Merci
 
Re...

L'activation de macro se fait par fichier par fichier (test de Micorosft sur le fichier en cours d'ouverture + si pas les bons "tag" ... alors Excel bloque les macro et demande à l'utilisateur de les activer pour ce fichier ...)

Donc Excel doit Ouvrir le Fichier pour tester sa sécurité et bloquer ou non les macros et initier la possibilité à l'utilisateur d'activer les macros.

Et pas moyen de court-circuiter l'ouverture et la vérification de sécurité de Microsoft ... donc à part ces solutions, peu de chance que tu trouves un moyen avec une interdiction d'ouverture.

Cela me parait infaisable mais peut-être que quelqu'un à un truc Magique dans sa manche ... lol
 
Bonjour ...
t'as pas cherché sur le forum ?
ex :

Merci à vous tous j'ai trouvé une solution ici (https://excel-downloads.com/threads/vba-excel-controle-de-lactivation-des-macros.127474/post-746429) et pu l'adapté :

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Sheets("FeuilleActivationDesMacros").Visible = xlSheetVisible
Dim curSheet As Worksheet
For Each curSheet In ThisWorkbook.Sheets
If curSheet.Name <> "FeuilleActivationDesMacros" Then curSheet.Visible = xlSheetVeryHidden
Next curSheet
ThisWorkbook.Save
End Sub

Merci
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour