Excel 2007, faire modifs sur feuille protegée

Résolu/Fermé
loute08 Messages postés 227 Date d'inscription jeudi 24 avril 2008 Statut Membre Dernière intervention 29 août 2015 - 26 févr. 2009 à 09:12
Raymond PENTIER Messages postés 58423 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 10 mai 2024 - 26 févr. 2009 à 22:39
Bonjour,

Voilà je vous expose mon problème, j'ai un devis sur lequel je dois verrouiller mes formules.

Or je dois laisser la possibilité au commercial de pouvoir insérer ou supprimer des lignes qui ne l'intéresse pas pour un client.

De plus, s'il ajoute une ligne dans la cellule où il y a une formule celle-ci doit se recopier, je m'explique :

- Ligne 1 :

Col A : Descriptif
Col B : Quantité
Col C : Px U
Col D : Total HT (=B1*C1)

Imaginons que mon commercial veuille ajouter une ligne, il faut que lors de l'ajout de la ligne 2 les formules se recopie.

J'ai verrouillé la feuille avec un mot de passe et ne souhaite pas lui donner.

J'espère que quelqu'un va pouvoir m'aider, c'est très urgent.

Merci pour votre aide.
A voir également:

9 réponses

Raymond PENTIER Messages postés 58423 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 10 mai 2024 17 105
26 févr. 2009 à 22:39
Et pourquoi tant de complications ? Tu prévois dès le départ une douzaine de lignes avec lee formules, et le commercial en renseignera une, deux ou plusieurs ! C'est ainsi que sont conçus tous les devis, toutes les pro-forma, toutes les factures, toutes les fiches de stocks ...

Est-ce qu'un fichier comme celui-ci répond à ta demande : https://www.cjoint.com/?cCxgxRJ8vx ?
2
thev Messages postés 1854 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 3 mai 2024 683
26 févr. 2009 à 10:33
il faut utiliser les options disponibles du menu protection :
1- protéger la feuille : autoriser les utilisateurs à supprimer et insérer des lignes,
2- permettre aux utilisateurs de modifier des plages : paramétrer les plages à autoriser.
0
loute08 Messages postés 227 Date d'inscription jeudi 24 avril 2008 Statut Membre Dernière intervention 29 août 2015 1
26 févr. 2009 à 13:35
Oui j'ai bien essayer de faire ça, mais ça ne recopie pas les formules dans les nouvelles lignes insérées...
0
m@rina Messages postés 20198 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 11 mai 2024 11 279
26 févr. 2009 à 13:43
Bonjour,

la seule solution passe par une macro...

m@rina
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
loute08 Messages postés 227 Date d'inscription jeudi 24 avril 2008 Statut Membre Dernière intervention 29 août 2015 1
26 févr. 2009 à 15:37
Et bien s'il faut passer par une macro quelqu'un pourrait me dire comment ça fonctionne parce que je n'en ai jamais utilsé...

Merci pour votre aide
0
thev Messages postés 1854 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 3 mai 2024 683
26 févr. 2009 à 15:45
sans objet.
0
loute08 Messages postés 227 Date d'inscription jeudi 24 avril 2008 Statut Membre Dernière intervention 29 août 2015 1
26 févr. 2009 à 16:40
PArdon thev mais je ne comprends pas ce que tu veux dire.
0
m@rina Messages postés 20198 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 11 mai 2024 11 279
26 févr. 2009 à 17:03
Bonjour,

Si je reprends ton exemple, voici une macro qui insérera une ligne au-dessus de la sélection et reproduira la formule de la colonne D :

Sub inserligne()

'déprotège la feuille
ActiveSheet.UnProtect "mot de passe"
'insère une ligne
ActiveCell.EntireRow.Insert
numligne = ActiveCell.Row
'recopie la formule
Range("D" & numligne - 1).Copy Destination:=Range("D" & numligne)
'reprotège la feuille
ActiveSheet.Protect "mot de passe"

End Sub


A adapter et éventuellement améliorer.
Tu peux associer cette macro à un bouton qui dirait : "placez le curseur sous la ligne à insérer et cliquez"...

m@rina
0
thev Messages postés 1854 Date d'inscription lundi 7 avril 2008 Statut Membre Dernière intervention 3 mai 2024 683
26 févr. 2009 à 18:34
j'ai voulu compléter ma première réponse mais je me suis aperçu que cela ne résolvait pas le problème. Je ne vois effectivement pas d'autre solution que de passer par une macro comme indiquée ci-dessus.
0