Copier une ligne dans une feuille protégée [Résolu/Fermé]

Signaler
Messages postés
3
Date d'inscription
jeudi 25 juillet 2013
Statut
Membre
Dernière intervention
25 juillet 2013
-
 Nitrof48 -
Bonjour,

Je travaille avec EXCEL 2003. J'ai une feuille (facture) que je veux protéger par mot de passe qui est le résultat de plusieurs calculs. Pour ajouter une ligne j'ai une commande macro qui fonctionne lorsque cette feuille est non protégée. Si je protège la feuille le système bloque la commande lorsqu'elle doit copier la dernière ligne.
Voici la commande

'« PHASE 1 »

Sheets("Registre employé").Select
'Copie les lignes "A" à "GE"
Range("A" & Range("A65536").End(xlUp).Row).Resize(2, 187).FillDown
'On Error Resume Next

' Efface les infos colonnes "C" à "T"
Range("c" & Range("c12").End(xlDown).Row).Resize(2, 18).SpecialCells(xlCellTypeConstants).ClearContents

' Efface la cellule "AN" (Code maladie)
Range("A" & Range("A65536").End(xlUp).Row).Select
ActiveCell.Offset(0, 39).ClearContents

' Efface la cellule "AS" (période d'attente)
Range("A" & Range("A65536").End(xlUp).Row).Select
ActiveCell.Offset(0, 44).ClearContents

' Efface la cellule "AT" (terminaison d'emploie)
Range("A" & Range("A65536").End(xlUp).Row).Select
ActiveCell.Offset(0, 45).ClearContents

'« PHASE 2 »

Sheets("Ajout Empl").Visible = True
Sheets("Ajout Empl").Select
Range("P1:AF1").Select
Selection.Copy

Sheets("Registre employé").Select
Range("A" & Range("A65536").End(xlUp).Row).Select
ActiveCell.Offset(0, 2).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

'efface les informations ds les cellules
Sheets("Ajout Empl").Select
Range("E17:G21").Select
Application.CutCopyMode = False
Selection.ClearContents
Range("E23").Select
Application.CutCopyMode = False
Selection.ClearContents

'efface code postal
Range("E23").Select
Selection.ClearContents

'efface profession
Range("J16:M16").Select
Selection.ClearContents

'efface sex etc
Range("M17:M20").Select
Selection.ClearContents

'efface ddn etc
Range("J17:K19").Select
Selection.ClearContents

'efface code postal
Range("E23").Select
Selection.ClearContents

'recodifie les dernier enregistrement
Range("E14").Select
ActiveCell.FormulaR1C1 = "=RC[7]+1"

'ferme le dossier
Sheets("Ajout Empl").Visible = False

'ajoute une ligne ds déductions
Sheets("Facture").Select
Range("A" & Range("A65536").End(xlUp).Row).Resize(2, 130).FillDown


'pointe le dernier enregistrement
Sheets("Registre employé").Select
Range("A" & Range("A65536").End(xlUp).Row).Select
Application.CutCopyMode = False
Selection.Copy

'ouvre fiche d'adhésion et sélectionne le dernier enregistrement
Sheets("Fiche").Visible = True
Sheets("Fiche").Select
Range("Z7").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Fiche").Select
Range("j10").Select


End Sub

3 réponses

Messages postés
1265
Date d'inscription
jeudi 22 avril 2010
Statut
Membre
Dernière intervention
19 mai 2015
142
Bonjour,
Tu pourrais déprotéger la feuille, puis la reprotéger ?
Sheets("Facture").Unprotect
'...
Sheets("Facture").Protect
J'ai tenté la commande mais voici que le système demande le mot de passe pour déprotéger la feuille.

Et si je protège la feuille sans mot de passe je ne suis pas plus avancé.

Avez-vous une autre suggestion ?
Messages postés
1265
Date d'inscription
jeudi 22 avril 2010
Statut
Membre
Dernière intervention
19 mai 2015
142
En ajoutant le mot de passe ? :)

Sheets("Facture").Unprotect Password:="MonMotDePasse" 
'... 
Sheets("Facture").Protect Password:="MonMotDePasse"

Merci ça fonctionne