Bonjour,
Je cherche une solution pour verrouiller les anciennes lignes d’un fichier Excel.
Je m’explique :
Un fichier Excel, utilisé par plusieurs utilisateurs. Dans ce fichier plusieurs onglets (disons Feuil1 et Feuil2 sont remplis au fur et à mesure. A chaque ouverture une ou plusieurs lignes sont remplies sur un ou deux des onglets.
Scénario :
A la fermeture ou via un bouton : vérifier que les 100 lignes de Feuil1 et 300 lignes de Feuil2, n’ont pas été modifiés
L’idée est de sécuriser la qualité des données passées pour pas qu’il y’ai de problème.
Suis-je obligé de passer par du code ? Ou est-ce que du paramétrage suffirait à résoudre cette problématique ?
Merci d’avance pour vos avis !
Une piste par macro dans le fichier joint. Le code est dans le module de code de ThisWorkbook. On ne pourra modifier que les lignes sous les tableaux à chaque ouverture du fichier. Le mot de passe pour déprotéger les deux feuilles est : mo2pass
VB:
Private Sub Workbook_Open()
Dim wks
For Each wks In Array(Feuil1, Feuil2)
wks.Unprotect "mo2pass"
wks.Columns.Locked = False
wks.UsedRange.EntireRow.Locked = True
wks.Protect "mo2pass"
Next wks
End Sub
Merci beaucoups, mapomme pour ton retour.
Est ce que le fait que j'ai des formules dans les lignes vides fait que le code le prenne en compte?
J'ai mis un fichier exemple qui explique, j’espère, ce que je veux faire²
Je suis en train de la tester pour voir si elle accepte de nouvelles colonnes de formules, deplacement de colonnes ect ect
Pour le moment ça fonctionne parfaitement
Merci mapomme!!!!