Combiner 2 macros Workbook_Open -forcer activ. macros + indiq. mot de passe

Bonjour,

J'ai un classeur Excel avec différentes feuilles. J'ai mis des mots de passe différents qui permettent à différents utilisateurs (chacun un mot de passe différent) de ne voir que les feuilles qui les concernent quand ils ouvrent le fichier.

Or quand je partage ce fichier par un lien internet et que les utilisateurs le téléchargent, les macros sont désactivées (et donc la demande du mot de passe est désactivée, et donc les utilisateurs voient toutes les feuilles au lieu de ne voir que les leurs).

Donc je veux faire ce qui est recommandé ici : https://www.excel-pratique.com/fr/astuces_vba/forcer_activation_des_macros en n'ayant qu'une feuille visible à l'ouverture du fichier, qui demande à activer les macros.

Mais comment combiner mes deux macros (celle du lien ci-dessus demandant d'activer les macros), et la mienne (ci-dessous, qui indique de demander un mot de passe à l'ouverture) ?

Je fais des tests de code dans mon volet ThisWorkbook mais ça ne marche pas...

Merci de votre aide !!!

LE CODE POUR OBLIGER A ACTIVER LES MACROS (cf. lien ci-dessus)

Private Sub Workbook_Open()

'Affichage de la feuille1 et de la feuille2
Sheets("Feuil1").Visible = -1
Sheets("Feuil2").Visible = -1

'Feuille de démarrage cachée
Sheets("pagedemarrage").Visible = 2

End Sub

MA MACRO POUR DEMANDER UN MOT DE PASSE ET N'OUVRIR QUE LES FEUILLES QUI Y CORRESPONDENT :

Private Sub Workbook_Open()
Dim MonPassword As Variant

Worksheets("feuil1").Visible = False
Worksheets("feuill2").Visible = False

Line1:
MonPassword = InputBox("Veuillez saisir votre mot de passe pour accéder à votre feuille :", "Identification")

Select Case MonPassword

Case "password1"
Worksheets("feuill1").Visible = True
Worksheets("feuill2").Visible = True

Case "password2"
Worksheets("SuiviDoss_2014-aujNePasTrier").Visible = False
Worksheets("SuiviN°spé").Visible = True

Case "password3"
Worksheets("SuiviDoss_2014-aujNePasTrier").Visible = True
Worksheets("SuiviN°spé").Visible = False

Case Else
GoTo Line1

End Select

End Sub

Bonsoir,

Une petite idée:

Sur la page d'accueil où tu demandes d'activer les macros obligatoirement; Crée un bouton qui s'appelle par exemple "Saisie du mot de passe"

Ce qui fait que si les macros ne sont pas activées ton bouton est inefficace et en plus toute TA procédure qui était dans workbooks open pour demander MdP tu la mets dans un module de "CommandButton1_Click"

Ca fait un clic de + à faire pour les utilisateurs ;)

Bonne soirée

Rechercher des sujets similaires à "combiner macros workbook open forcer activ indiq mot passe"