Empêcher l'ouverture d'un fichier Excel, si les macros ne sont pas activés

Bonjour à tous,

J'ai un fichier dont à l'ouverture il a deux étapes de login (le code VBA ci-dessous) en testant mon fichier sur un autre PC (les macros été désactivé "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,

Thibet.

Bonjour Thibet,

Voici un exemple disponible en téléchargement et à adapter selon le besoin

https://www.excel-pratique.com/fr/telechargements/utilitaires/affichage-onglet-selon-gid-no487

A+

Bonjour,

On ne peut pas empêcher l'ouverture du fichier mais on peut masquer toutes les feuilles (sauf celle d'accueil) qui ne seront affichables que par macro (propriété = xlSheetVeryHidden) et protéger par mot de passe l'ouverture du projet.

Bonjour à tous,

et merci pour vos réponses.

-Thev; J'ai essayé d'adapter à la propriété de ma feuille avec (xlSheetVeryHidden) mais sans succès la page principale qui s'affiche mais mes autres feuilles ne s'affichent plus car à l'ouverture j'ai déjà double connexion pour le classeur premier avec mot de passe pour l'ouverture de celui-ci et la deuxième avec un login et mot de passe par utilisateur, comment appliquer votre solution à mon "Thisworkbook".

-Bruno; J'ai essayé votre exemple (qui est très explicite et très bien) mais l'adaptation à mon classeur là ... j'ai coulé . Quand j'ai modifié le nom "Accueil" par "Principale" qui est ma page d'accueil 'sur mon classeur car pas mal de recherche avec ce nom de feuille' il ouvre directement la page paramètre, et me demande le mot de passe la page accueil s'affiche plus et au niveau Nom Prénom j'ai voulus modifier mais ne reconnais pas utilisateur et m'éjecte comment appliquer le changement de nom utilisateur. Y-a-t-il la possibilité d'adapter à ma feuille "Thisworkbook" avec votre exemple.

Merci

Re,

A priori vous avez téléchargé le fichier sans lire l'explication sur le fil indiqué

Bonjour,
De mauvaises habitudes à corriger !...

Ne postez pas la même question sur un autre forum pour éviter de faire perdre bêtement du temps aux membres sur un problème qui peut être déjà résolu sur l'autre forum. L'inverse est également valable, si vous avez déjà posé votre question sur un autre forum, ne créez pas un doublon sur ce forum (à moins d'avoir clôturé le sujet sur l'autre forum).

Bonjour,

Chercher des solutions pour essayer de comprendre car peu explicite pour moi si je suis là c'est pour être aider par des pro. comme vous (car très novice dans la matière) Mais je reste toujours ouvert à toutes idées avec respect.

Bruno; en ce qui concerne votre réponse , je l'ai lu mais pas pu l'adapter à ma feuille "Thisworkbook" d'où c'était ma demande sur le forum.

Merci pour vos conseils,

Thibet

Rechercher des sujets similaires à "empecher ouverture fichier macros pas actives"