Empêchement "sécurisé" de supprimer un onglet

Bonjour au forum,

Je souhaite empêcher la suppression d'une feuille, pour cela j'ai entré le code suivant qui empêche l'enregistrement suite à la suppression de la feuille concernée :

Private Sub Workbook_BeforeSave(ByVal SaveAsUi As Boolean, Cancel As Boolean)

On Error Resume Next

If IsError(Feuil12.Name) Then
  MsgBox "Vous avez supprimé une feuille protégée, l'enregistrement sera impossible jusqu'à la prochaine réouverture du document."
  Cancel = True
End If

End Sub

A la suite de ça, encore fallait-il protéger le code, ce que j'ai fait par l'ajout d'un mot de passe dans les propriétés du projet (protection facilement contournable parait-il mais ça me suffira pour l'instant). Mais j'ai ensuite réalisé que tout ça ne servait à rien si les macros sont simplement désactivées. Le code ne s'exécute pas et la suppression est possible.

D'où ma question : est-il possible de forcer l'activation des macros et de la verrouiller ? Ou bien un moyen d'empêcher l'enregistrement du document tant que les macros sont désactivées ? Une autre idée ?

Merci beaucoup

Gogo

Bonjour et bienvenue sur le forum

Et pourquoi ne pas masquer la feuille en « veryhidden’’ ?

Elle ne peut se masquer ainsi et se démasquer qu’avec une macro. Alors, si la protection macro te suffit …

Les instructions :

    Sheets("Feuil1").Visible = xlVeryHidden 'pour masquer
     Sheets("Feuil1").Visible = True         'pour démasquer

Bye !

Bonsoir gmb, le forum.

Il existe sur le site un exemple de ce que "vous demandez" :

à la fermeture du fichier, une macro masque toutes les feuilles, sauf la feuille1 (par exemple) et sur cette feuille il est écrit "Activez les macros"

Si le fichier est ouvert sans activer les macros, alors une seule feuille est visible, celle qui affiche le message "Activez les macros !".

Si les macros sont activées, alors dans le Open, une boucle affiche toutes les feuilles et masque le feuille1, et le classeur est utilisable comme tel.

Dans votre cas en plus de la feuille1, la feuille à protéger serait également masquée...

fichier :

12active-macro.xlsm (208.82 Ko)

@ bientôt

LouReeD

Gmb Je ne cherche pas à la masquer au contraire, elle doit être bien visible aux yeux de tous mais il doit être impossible de la supprimer. Mais je ne connaissais pas la fonction Very Hidden, merci c'est toujours bon à prendre.

LouReeD Pas bête, ça m'inspire je vais essayer quelque chose comme ça, merci.

Bonjour,

je crois avoir quelque part un truc où il faut une clé USB de branchée avec un fichier particulier pour pouvoir faire certaines actions comme ouvrir le fichier...

Mais bien évidemment tout ceci fonctionne si vous utilisez l'application "mère" du fichier, car toutes ces protections ne "valent rien" avec une ouverture du fichier par Open Office...

@ bientôt

LouReeD

Rechercher des sujets similaires à "empechement securise supprimer onglet"