Problème Fichier qui se déverrouille

Bonsoir tout le monde.

J’ai besoin de vaut connaissance pour mon problème.

J’ai créé un fichier Excel avec macro pour mon entreprise.

Ce fichier est verrouillé avec un mot de passe « X ».

1 zone (A) de ce fichier peux être rempli par n’importe qui en revanche ne peux être modifié que par 3 personnes avec un mot de passe « A » ou leur session Windows.

Et 1 autre zone (B) ne peux être rempli ou modifié que par 1 utilisateur par un de passe « B » ou sa session windows.

Je précise que l’utilisateur de la zone B peux aussi modifier la zone A par sa session windows.

Pour Info le fichier fonctionne très bien mais...

Mon problème et que je retrouve de temps en temps (après remplissage de la zone « A » par des personnes ).

Les zones « A et B » déverrouillé et que du coup n’importe qui peux modifier la zone A et écrire ou modifier la zone B.

J’ai beau re-verrouiller les zones et redonner les accès aux personnes, au bout d’un temps je retrouve toujours les zones déverrouillé.

Avez vous déjà était confronté à ce problème?

Savez vous comment cela peut ce produire et comment puis je régler mon problème?

Merci de votre à tous.

Bonjour,

la protection des données via excel n'est pas à mon sens très fiable

une des solutions à ton problème pourrit être une macro événementielle qui testerait le Environ("username") et exécuterait un undo si l'utilisateur n'est pas valide

il faut aussi 3 conditions :

  • masquer les macros
  • mettre en xlveryhidden les paramètres (utilisateurs valides)
  • forcer les macros (par exemple en n'affichant les pages que si les macros ont été activées)

Merci pour ta réponse.

J’ai déjà réalisé les 3 conditions.

En revanche de ne voit pas du tout à quoi sert le

 Environ("username") 

et le

undo

car tous les utilisateurs doivent pouvoir écrire dans la zone « A ».

Le mieux serait que tu postes un bout de fichier ...

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("B2")) Is Nothing Then Exit Sub
If Environ("username") <> Sheets("param").Range("A1").Value Then
    With Application
        .EnableEvents = False
        .Undo
        .EnableEvents = True
    End With
End If
End Sub
Rechercher des sujets similaires à "probleme fichier qui deverrouille"