Excel 2003 - Protection d'une feuille sauf tableau actif
Bonjour à toutes et tous,
je butte sur un problème de protection de feuille... (en même temps ce que je veux n'est peut être pas réalisable!
dans une feuille excel, j'ai crée un tableau (sélection d'une plage, puis Données, Liste, Création d'une liste)
Je souhaite empêcher toute manip sur la feuille à l'exception du rajout de lignes dans le tableau.
Mais j'y arrive pas lorsque j'applique ma protection sur la feuille, la petite astérisque bleu qui permet l'ajout d'une ligne dans le tableau n'apparait plus...
est-ce qu'il y a un moyen de contourner ce problème?
Salut,
Fabian123 a écrit :est-ce qu'il y a un moyen de contourner ce problème?
Probablement par macro. Il faudrait avoir un bout de fichier avec ton tableau en place.
Cordialement.
Bonjour Yvouille,
voila un fichier pour exemple. Ce n'est pas mon classeur qui contient plusieurs feuilles avec de nombreux noms et adresses!
Merci !
Re,
j'ai essayé cette solution, ça peut éventuellement se faire, mais pour rester dans la zone du tableau (liste sur Excel 2003) je dois systématiquement faire clic droit et insérer ligne. Je trouve que ça complique les choses!
J'ai également essayé ceci:
avant de créer mon tableau (Liste) je sélectionne les colonne A à J (pour notre exemple) puis je décoche "verrouillé" dans les options, ensuite je crée mon tableau et puis je protège la feuille... mais ça ne fonctionne pas non plus!
Je tiens à protéger ma feuilles, en ne permettant que l'encodage et rien d'autre pour éviter que les personnes qui utiliseront le fichier ne supprime ou modifie des choses (formules, tableau...) par inadvertance!
Et l'avantage d'utiliser le système de "tableau" et que cela permet le report automatique des formules...!
tu penses qu'il y a moyen de faire cela en passant par une macro? Je trouve ça un peu bizarre que cela n'ai pas été pensé...
Salut,
Fabian123 a écrit :tu penses qu'il y a moyen de faire cela en passant par une macro? Je trouve ça un peu bizarre que cela n'ai pas été pensé...
Les macros sont justement là pour tout ce qui n’a pas été pensé
Dans le fichier ci-joint, j’ai protégé ta feuille par le mot de passe abc. Si tu cliques sur le bouton ‘Nouvelle ligne’, une nouvelle ligne est insérée devant la dernière, avec la reprise de la formule de la colonne C.
Je présume que tu préfèrerais qu’elle soit insérée en tout dernier, mais je ne vais pas continuer à me casser la tête sur ce fichier-exemple car tôt ou tard tu vas me dire : « Ton travail fonctionne parfaitement sur le fichier-modèle, mais je n’arrive pas à l’appliquer à mon fichier !» et je vais devoir recommencer pratiquement à zéro sur ton fichier.
Je te propose alors que tu créés un fichier basé sur ton fichier réel sur lequel tu enlèves les feuilles qui n’ont rien à voir avec ton problème et sur lequel tu remplaces les données sensibles par des données bidon, mais sur lequel il y a tes formules et les autres trucs importants pour cette macro.
A te relire.
Bonjour Yvouille,
un grand merci pour ton aide, il est vrai que si la nouvelle ligne s'insère en dernier c'est mieux, mais je vais pas pinailler non plus!
tu trouveras en pièce jointe mon fichier duquel j'ai retiré les noms.
Je souhaiterais appliquer une protection sur les feuilles encodage et listing, que l'utilisateur puisse seulement sélectionner les cellules du tableau, ajouter une ligne au tableau et trier le tableau, mais je ne veux pas qu'il puisse supprimer une ligne.
Encore un grand merci pour ton aide!
Re,
Tu as 3 feuilles dont le nom commence par ‘Encodage’, mais aucune qui comporte le mot ‘Listing’. Parles-tu de tes feuilles qui commencent par le mot ‘Liste’ ?
Je t’avais demandé de laisser les formules en place ; je n’en voie aucune sur tes feuilles ‘Encodage’. Il y a même des protections bizarres : lorsque je protège la feuille ‘Encodage Présences’, la ligne 2 n’est pas protégée, la ligne 3 oui, la ligne 4 non.
Vas-tu me fournir un fichier utilisable ?
Amicalement.
Re,
revoici le fichier, il s'agit bien des colonnes Encodage et Liste.
Excuse moi pour les protections bizarres, j'ai fait des essais sur mon fichier pour les protections et je n'avais pas remis le fichier dans sa configuration d'origine (j'espère que cette fois c'est ok!)
Concernant les formules, il y en a une dans la feuilles 'Liste Marchands', colonne 'F'. Les autres formules se trouvent dans des macros grâce à d'autres utilisateurs. En effet j'avais principalement des formules contenant les fonctions INDEX et EQUIV, pour que (par exemple) le nom du marchand s'affiche automatiquement suite à l'encodage du n° ID.
Un membre (BANZAI64) m'a créé une macro qui permet de:
- soit sélectionner le nom dans la liste déroulante de la cellule, et d'afficher automatiquement l'ID correspondant;
- soit d'encoder l'ID et d'afficher le nom automatiquement.
Le fichier que je te met en pièce jointe est le bon fichier, je n'ai fait que retirer les noms et adresses des marchands.
Je sais que le fichier est très mal organisé au niveau des macros, il doit y avoir moyen de simplifier/optimiser les codes, mais je ne m'y connais pas suffisamment pour le moment, j’espère qu'avec votre aide j'y parviendrai!
Encore merci pour ton aide!
Salut,
Dans le premier fichier que tu avais fourni, il y avait un tableau non protégé sur une feuille protégée et aucune autre macro.
Dans le deuxième fichier que tu as envoyé, il y avait des tableaux avec des protections bizarres.
Dans le dernier fichier que tu m’as fourni en dernier, il y a des feuilles entièrement protégées, y compris les tableaux, et tout plein de macros faisant interférence.
Comme il n’y avait pas de données sur les feuilles ‘Encodage’ – tel que je te l’avais demandé – j’ai tenté une macro sur la feuille ‘Liste Marchands’, derrière le bouton mis en place sur cette feuille. Mais que je libère les cellules du tableau ou que je les laisse protégée, j’ai toujours des macros autres qui font interférence.
Je ne ‘sens’ pas bien ce travail et n’ai pas d’enthousiasme afin de continuer à chercher une solution. Je dois donc t’informer que j’abandonne la partie. Comme Banzai connait semble-t-il bien ce fichier, je te conseille de retourner sur le fil que vous avez commencé afin de lui demander s’il pourrait t’aider lui.
Désolé
A une autre fois peut-être.
Bonjour Yvouille,
je comprends que tu ne veuille pas continuer. Merci néanmoins d'avoir pris la peine d'y jeter un œil et d'avoir tenté quelque chose!
Le dernier fichier que je t'ai envoyé est la base sur laquelle je dois travailler.
Je ne sais pas ce que j'ai fait comme manip, mais normalement il n'y aurait pas du avoir de feuille ou de tableaux protégés!
Je sais que mon travail est franchement brouillon et qu'il faudrait revoir le code pour l'agencer mieux.
Je crois que je vais essayer de réorganiser le code plus efficacement, puis je continuerai sur mes problèmes!
Pour info, je vais quand même essayer d'expliquer ce à quoi je souhaite arriver!
Je dois gérer les marchés communaux (marchands ambulants). Des agents placiers, sur le terrain, prennent note des présences / absences et des sommes encaissées aux marchands.
Il y a deux types de marchands:
- les abonnés (reçoivent une facture chaque trimestre, semestre ou année)
- les "volants" qui viennent chaque semaine et paie directement en liquide à l'agent.
Actuellement, je travaille comme suit:
- un fichier excel pour l'encodage des présences/absences et montants encaissés
- un fichier excel contenant toutes les infos marchands (adresses, tél...)
- un fichier excel pour le suivi du paiement de mes abonnements.
- aucun lien entre les fichiers, donc les noms ne sont pas toujours orthographiés de la même façon.
- si un nouveau marchand est renseigné "abonné" ou plus abonné par l'agent, il faut que je pense à modifier le fichier du suivi des paiement en plus de celui des présences (source d'erreur)
- ...
ce que je mets en place (ou plutôt essaie):
un fichier global ou tout serait lié.
pour ce faire j'ai donc créé différente feuilles fonctionnant un peu comme les tables d'une base de données (ça serait évidemment plus simple avec Access mais nous ne l'avons pas au bureau)
- la feuille 'Liste Marchands' : qui contient toutes les coordonnées des marchands
- la feuille 'Liste Agents' : coordonnées des agents
- la feuille 'Liste Marchés' : infos sur les marchés et tarifs appliqués
- la feuille 'Liste Catégorie Produit' : comme son nom l'indique, elle reprend les catégorie de produits vendus (alimentaire, textiles...)
- la feuille 'Produits' : elle est liée à la précédente et permet de "remplir" les différente catégorie (fruits et légumes, boucherie...)
- la feuille 'Liste Abonnés' : c'est dans cette feuille que je lie les marchands aux marchés auxquels ils participent ainsi qu'aux produits qu'ils vendent, s'ils sont abonnés ou non et quelle type de paiement ils souhaitent si abonnés (trimestriel, semestriel, annuel). Cela me donne ainsi un tableau qui affiche le montant à payer par période ainsi que l'état du paiement (payé ou non)
- la feuille 'Encodage communication structurée' : j'y copie/colle les communications structurées exportées du logiciel comptable
- la feuille 'Encodage Extraits de comptes' : j'y encode les communications structurées des paiements reçus sur les extraits de comptes
- la feuille 'Encodage Présences' : j'y encodes les présences/absences, paiements des marchands.
- la feuille 'Impression Feuilles de présences' : il s'agit d'un TCD basé sur la feuille 'Liste Abonné' : il permet l'impression, pour les agents placiers, des feuilles sur lesquels ils vont pointer les présences / absences et connaitre l'état des paiements abonnés en temps réel (contrairement à aujourd'hui). Cette feuille permet également d'imprimer des feuilles d'accusé de réception lorsque les marchands reçoivent un document.
- la feuille 'Denrées chaudes' : TCD lié également à la feuilles abonné et qui permet de trier les marchands vendant des denrées chaudes. Ces derniers doivent être renseignés à chaque venue sur un marché et transmis aux Service comptable qui perçoit une taxe.
- la feuille 'Impression Abonnements' : permet d'imprimer le listing des abonnés pour les encoder dans le logiciel comptable. Transfert également ce listing dans la feuille 'Encodage communication structurées'
COMMENT CELA FONCTIONNE!
1. L'encodage des listes
Je passe les feuilles liste marchands, marchés, produits, catégorie produits et agents, qui servent exclusivement à renseigner des infos.
La feuille 'Liste abonnés'. Elle est probablement la plus importante, c'est elle qui lie les marchands au marchés, aux produits qu'ils vendent et s'ils sont abonnés ou non et quel type de paiement (trimestre, semestre, année).
Des formules sont encodées dans les colonnes de paiement (elles permettent d'afficher le montant à payer ainsi que l'état du paiement)
2. les factures
le TCD de la feuille 'impression abonnement' permet de faire deux choses:
- imprimer la liste reprenant les abonnés par marché et type d'abonnements pour pouvoir les encoder à la suite dans le logiciel comptable;
- transférer cette même liste, dans le même ordre dans la feuille 'Encodage communication structurées'. Ce transfert se fait via une macro qui permet d'ajouter à la suite dans la feuille encodage les différents trimestre, après l'avoir sélectionné dans un userform.
Par la suite, on encodera journellement les comm strucurées reprises dans les extraits de comptes, dans la feuille 'Encodage Extrait compte'. Via la formule présente dans la feuille 'Liste abonné', colonnes Paiements T1, T2... l'état du paiement s'affichera (payé ou pas payé).
3. les feuilles de présences et leur encodage
la feuille 'Impression présences' permet l'impression pour les agents des feuilles de présences, par marché. y apparait (via le TDC lié à la feuille 'Liste Abonnés') l'état des paiements des abonnés. Ils notent les présences absences et encaissement et me retournent les feuilles.
Je les encode alors dans la feuille 'encodage présences'. Par la suite cela me permettra de tirer des stats par marché ou globale.
Voilà, expliqué rapidement ce que je réalise.
La protection du classeur, je pourrais éventuellement m'en passer, puisque 90% du temps, c'est moi qui l'utilisera, mais pour les 10% restant, je serais rassuré de pouvoir limiter l'accès à l'encodage au sein des tableaux et aux fonctions de tris de ceux-ci!
Je ne sais pas comment j'ai fait pour faire ces fameuses protections bizarre, je vais essayer de remettre cela à "zéro"!
Encore merci pour t'être penché sur mon problème! Je ne manquerai par de te montrer mon fichier une fois finalisé!
Bonne journée!
Salut Fabian,
Merci pour tes longues explications, comme je t'ai dit que je ne continuais malheureusement pas, elles me semblent cependant inutiles.
Bonnes continuations.
