|
| grab | Posté le 06/09/2008 @ 08:35 |
Petit astucien
270 Messages
| bonjour,
voici mon souci :
je dois adresser quotidiennement un tableau sous format .xls à mes collègues de travail. Il leur reste à renseigner les rubriques les concernant. Toutefois, je ne veux pas qu'ils puissent modifier une partie du tableau (en l'occurrence, les cellules indiquant les noms). Or, lorsque je verrouille ces cellules ou que je donne des autorisations restreintes pour les modifications de plages ou de scenarios, il leur suffit de faire un copier-coller de la page du classeur pour en modifier le contenu à leur guise.
Voici le type de tableau, sachant que la colonne NOM est à verrouiller :

Quelqu'un connaît-il une solution fiable ? Je travail sous Excel 2003.
Merci d'avance et bon week-end à tous
|
| |
| |
| Publicité |
|
|
| galopin01 | Posté le 06/09/2008 à 14:53 |
Astucien
4321 Messages
| Bonjour,
Une image ne renseigne pas beaucoup sur les spécificités de ton classeur (et la bonne ou mauvaise manière dont tu utilises les attributs existants).
Toutefois en règle générale au moment de la protection de ta feuille, il suffit de décocher la première option (Sélectionner les cellules protégées) pour solutionner le problème.
La démo
A+ |
| |
|
| grab | Posté le 07/09/2008 à 07:24 |
Petit astucien
270 Messages
| galopin01 a écrit :
Bonjour,
Une image ne renseigne pas beaucoup sur les spécificités de ton classeur (et la bonne ou mauvaise manière dont tu utilises les attributs existants).
Toutefois en règle générale au moment de la protection de ta feuille, il suffit de décocher la première option (Sélectionner les cellules protégées) pour solutionner le problème.
La démo
A+
Merci galopin01 pour ta démo. C'est bien de cela qu'il s'agit et ton tableau reproduit exactement ce que je cherche à obtenir et il me semble avoir procédé de la même manière.
Le problème est qu'au boulot certains petits "malins" faussent les réponses en modifiant ce tableau. Ils procèdent tout simplement en ouvrant le classeur, puis sélectionnent toute la feuille et la "copient/collent" dans un autre classeur. A ce moment, les verrous "sautent".
cordialement |
| |
|
| galopin01 | Posté le 07/09/2008 à 09:46 |
Astucien
4321 Messages
| Bonjour,
Depuis que le monde est monde des gens essaient de singer leurs semblables ! Il n'existe aucune protection définitive contre les faux, la piraterie...
C'est quoi le problème ? Tu dois récupérer les données ensuite ? C'est à toi de t'assurer que tu récupères bien le fichier original et non une mauvaise copie.
Dans ce cas, VBA est souvent mis à contribution.
Il faut mieux préciser ta problématique, le contexte. Pour l'instant avec si peu de billes, je ne peux pas jouer avec toi ! 
A+ |
| |
|
| gilbert_rgi | Posté le 07/09/2008 à 11:00 |
Petit astucien
842 Messages
| Bonjour
une solution interdire le "coller" "copier" "couper" sur le fichier
Salutations
Gilbert_RGI
Modifié par gilbert_rgi le 07/09/2008 11:08 |
| |
|
| grab | Posté le 07/09/2008 à 13:31 |
Petit astucien
270 Messages
| galopin01 a écrit :
C'est quoi le problème ? Tu dois récupérer les données ensuite ? C'est à toi de t'assurer que tu récupères bien le fichier original et non une mauvaise copie.
oui mais quotidiennement, récupérer 12 fichiers différents comportant une centaine de noms chacun, à vérifier c'est pas le top !
qu'est ce que VBA ? |
| |
|
| grab | Posté le 07/09/2008 à 14:18 |
Petit astucien
270 Messages
| gilbert_rgi a écrit :
Bonjour
une solution interdire le "coller" "copier" "couper" sur le fichier
Salutations
Gilbert_RGI
j'ai bien vu la solution que tu donnes en lien, mais je ne comprends pas à quoi correspond VBA. Si tu peux m'en dire davantage... merci d'avance. |
| |
|
| grab | Posté le 07/09/2008 à 14:24 |
Petit astucien
270 Messages
| gilbert_rgi a écrit :
Bonjour
une solution interdire le "coller" "copier" "couper" sur le fichier
Salutations
Gilbert_RGI
j'ai bien vu la solution que tu donnes en lien, mais je ne comprends pas à quoi correspond VBA. Si tu peux m'en dire davantage... merci d'avance. |
| |
|
| gilbert_rgi | Posté le 07/09/2008 à 14:25 |
Petit astucien
842 Messages
| |
| |
|
| grab | Posté le 07/09/2008 à 14:41 |
Petit astucien
270 Messages
| gilbert_rgi a écrit :
voilà un exemple
essaie de copier coller ou couper
http://cjoint.com/?jhoyM4Xyuj
Salutations
Gilbert_RGI
ben, lorsque je clique sur "désactiver les macros" j'y parviens et c'est justement ce que je ne souhaite pas que puissent faire mes correspondants .
Pour être plus précis dans ma démarche, comme le demande galopin01 :
En effet, j'envoie quotidiennement à 12 bureaux différents de mon entreprise un fichier excel à mettre à jour (correspondant à la situation du personnel de chaque bureau, nom par nom : absence, congés, maladie, stage etc....).
Le problème est que certains bureau, pour leur propre commodité, modifient ce tableau car ils classent leur personnel par ordre alphabétique. A l'inverse, d'autres bureaux classent leur personnel par ordre hiérarchique car cela les arrange aussi.
Donc, à la réception des fichiers renseignés, je suis obligé de tout remettre en forme alors que si tous utilisaient le tableau sans le modifier, je pourrais travailler par simple copier/coller dans le tableau général de l'entreprise. En effet, ce tableau répertorie le personnel par bureau et chaque bureau reçoit donc son propre fichier extrait du tableau général.
Je ne sais pas si je parviens à bien me faire comprendre 
Merci en tous cas de ton intérêt |
| |
|
| galopin01 | Posté le 07/09/2008 à 16:21 |
Astucien
4321 Messages
| Il n'y a qu'une solution simple à ton problème. Elle est d'ordre relationnel ou/et hiérarchique : c'est d'exiger de tes correspondants un fichier non bricolé.
Si tu n'est pas certain d'avoir l'appui hiérarchique... il n'y a pas de solution simple à ton problème.
Toutes les autres solutions me semblent passer par une bonne maîtrise des macros (VBA) : Si tu ne peux pas imposer l'utilisation des macros à tes correspondants, il est en revanche relativement simple d'organiser une récupération automatique des données qui t'intéressent.
A+ |
| |
|
| motarfou | Posté le 07/09/2008 à 22:16 |
Petit astucien
4 Messages
| Bonsoir
J'ai moi même réalisé un tableau pour mon job, qui est mis à jour par plusieurs personnes.
Pour le protéger j'ai procédé comme ci dessous :
Sélectionner le tableau puis click droit, Format Cellule, onglet Sécurité et sélectionner Vérouillé
Ensuite sélectionner les cellules qui doivent être remplies, click droit, Format Cellule, onglet Sécurité et déselectionner Vérouillé
Dans la barre de Menu : Outils , Protection feuille , y mettre un mot de passe, confirmer le mot de passe puis Ok
A partir de là on ne peut plus faire de copier/coller , ni insere ligne, etc..
Bon courage |
| |
|
| ELICHA | Posté le 08/09/2008 à 06:50 |
Astucien
1656 Messages
| Bonjour, La dernière solution est la bonne; elle ne permet de manipuler que les cellules autorisées. Cependant même protégés les fichiers peuvent toujours être déprotégés par un petit programme. Mais on en arrive à travailler aux services secrets. D'ailleurs, il est étonnant que quelqu'un qui manipule journellement des fichiers Excel, ne sache pas, au moins de nom, ce qu'est le VBA, même si comme moi, je ne me sens pas qualifié pour m'y atteler. De plus, en gros, puisque l'harmonisation entre les entreprises n'est pas possible, tu veux imposer aux autres le travail que tu n'as pas envie de faire toi-même tous les jours. En principe, celui qui collecte les données doit les classer selon son ordre personnel, à moins d'avoir l'autorité pour imposer son propre classement aux autres. |
| |
|
| grab | Posté le 08/09/2008 à 06:55 |
Petit astucien
270 Messages
| motarfou a écrit :
Bonsoir
J'ai moi même réalisé un tableau pour mon job, qui est mis à jour par plusieurs personnes.
Pour le protéger j'ai procédé comme ci dessous :
Sélectionner le tableau puis click droit, Format Cellule, onglet Sécurité et sélectionner Vérouillé
Ensuite sélectionner les cellules qui doivent être remplies, click droit, Format Cellule, onglet Sécurité et déselectionner Vérouillé
Dans la barre de Menu : Outils , Protection feuille , y mettre un mot de passe, confirmer le mot de passe puis Ok
A partir de là on ne peut plus faire de copier/coller , ni insere ligne, etc..
Bon courage
bonjour motarfou,
malheureusement, ta solution est celle que j'utilisais avant de découvrir qu'elle n'estpas totalement fiable. Si tu fais "copier/coller" du fichier, je suis d'accord avec toi, cela conseve les cellules verrouillées. Par contre, et c'est ce que font ceux qui ne jouent pas le eu à mon travail, si tu ouvres le fichier et que tu sélectionnes toute la page puis tu la copies/colles sur une autre page excel, les protections sautent. Fais l'essai et surtout ne l'ébruite pas au boulot 
pour galopin01 :
eh oui ! c'est bien là le problème : ma hiérarchie a été alertée à plusieurs reprises mais ne semble pas réagir, tant qu'ils ont leurs effectifs dans les délais, peu leur importe que l'on "rame" : l'administration n'a pas encore intégré totalement les notions de "gain de temps"et d"efficacité" !
Bonne semaine |
| |
|
| gilbert_rgi | Posté le 08/09/2008 à 09:09 |
Petit astucien
842 Messages
| Bonjour
suite:
ben, lorsque je clique sur "désactiver les macros" j'y parviens et c'est justement ce que je ne souhaite pas que puissent faire mes correspondants
Peut-être une solution !!!
Cacher (en xlsheetveryhidden dans les propriétés ) les feuilles du tableau et faire une feuille expliquant qu'il faut répondre oui à la question à l'ouverture du classeur sinon cette appli ne fonctionnera pas. Bien entendu il faut cacher les feuilles avant de fermer le classeur.
ex: http://cjoint.com/?jij0blIHLd
Salutations
Gilbert_RGI Modifié par gilbert_rgi le 08/09/2008 09:52 |
| |
|
| galopin01 | Posté le 08/09/2008 à 10:09 |
Astucien
4321 Messages
| bonjour gilbert,
Cela suppose une maitrise de VBA que notre ami n'a visiblement pas. Dans l'hypothèse ou on distillerait quand même un peu de VBA, je ne suis pas du tout favorable à ce type de solution qui entraînerait pour une douzaine de postes distants des conséquences que personne ne maîtrisera.
Tant qu'a balancer du VBA autant le faire proprement ! Une demi douzaine de macros sont nécessaires à appliquer cette méthode en enquiquinant tout le monde...
Une seule macro serait nécessaire à la récupération automatique des données (même dans le désordre) et tout le monde serait content !
Mébon...
A+
|
| |
|
| gilbert_rgi | Posté le 08/09/2008 à 10:25 |
Petit astucien
842 Messages
| Bonjour Galopin01
Certes pour ton hypothèse.
mais juste pour dire qu'il y a une voire des solutions
Le problème est que certains bureau, pour leur propre commodité, modifient ce tableau car ils classent leur personnel par ordre alphabétique. A l'inverse, d'autres bureaux classent leur personnel par ordre hiérarchique car cela les arrange aussi.
juste un filtre ne suffirait-il pas???

@+++
Gilbert_RGI Modifié par gilbert_rgi le 08/09/2008 11:28 |
| |
|
| alainsha1 | Posté le 08/09/2008 à 14:05 |
Petit astucien
46 Messages
| Bonjour
Je pense qu'il existe une autre solution, sans passer par les macros (au fait le VBA signifie Visual Basic et est un langage de programmation de macro instructions). Je rencontre le meme genre de probleme pour rapatrier des volumes de production et suis passé par la fonction Vlookup (c'est le nom en anglais car je travaille en Chine, il me semble qu'en francais c'etait recherchev ou vconsult). Cette fonction permet de rechercher dans une table une valeur (en l'occurence le nom de l'employé) et de renvoyer la valeur située x colonnes à droite (par exemple la presence ou le nombre d'heures). Il faut bien faire attention à mettre la valeur approchée sur "faux" car sinon la fonction renvoie une valeurt approchante c'est a dire pas la bonne !
Si probleme merci de relancer, de toute maniere je continue à suivre mais j'ai 6 heures de décalage horaire.
A+
Alain |
| |
|
| gilbert_rgi | Posté le 08/09/2008 à 16:37 |
Petit astucien
842 Messages
| alainsha1 a écrit :
Bonjour
Je pense qu'il existe une autre solution,
oui laquelle !! grab serait sans doute heureux de la connaitre
(au fait le VBA signifie Visual Basic et est un langage de programmation de macro instructions).
VBA signifie Visual Basic pour Apllications
la fonction Vlookup
[ValeurCherchée] = cellule ou valeur cherchée [nom]= plage totale du tableau 1 = colonne à visualiser rech = Application.WorksheetFunction.VLookup([ValeurCherchée], [nom], 1)
Cdlt
Gilbert_RGI
|
| |
|
| galopin01 | Posté le 08/09/2008 à 20:02 |
Astucien
4321 Messages
| alainsha1 a écrit :
Je pense qu'il existe une autre solution, sans passer par les macros

Il y a peut-être effectivement une ébauche de solution avec RECHERCHEV :
Dans le classeur Cible de notre ami (celui qui doit-être nourri par les apports des différents bureaux)
La feuille 1 est la feuille Cible vide
La feuille 2 est une copie de la feuille Cible vide mais les colonnes correspondant aux données à importer sont remplies de RECHERCHEV qui pointent sur la feuille 3.
Dans la feuille 3 (vide) on colle toutes les données issues des différents bureaux même dans le désordre.
YAPUKA faire un Copier/Collage spécial valeur de la feuille 2 vers la feuille 1 pour résoudre le problème.
Euh... J'ai pas essayé, mais ça me parait intellectuellement satisfaisant ! 
Bon... YA juste à croiser les doigts pour que les joyeux bricoleurs ne mélangent pas aussi les colonnes entre elles 
A+
Après quelques test :
[Edit] : Pour le bon fonctionnement du RECHERCHEV, il est indispensable que celui-ci fonctionne sur une valeur unique genre N° de Sécu, etc... sinon gare aux homonymes ! 
Modifié par galopin01 le 08/09/2008 20:43 |
| |
|
| claudth | Posté le 08/09/2008 à 20:04 |
Petit astucien
7 Messages
| Bonsoir,
Dans ton tableau il faut que tu commences par vérouiller les cellules que tu ne veux pas autoriser les modifications.
Pour les autres tu deverouilles.(format cellule>protection)case cochee pour verouiller.
Ensuite tu dois proteger ta feuille pour activer le vérouillage et dans les autorisations qui te sont proposees tu laisses uniquement coché la case sélectionner les cellules dévérouillées et tu mets un mot de passe.
Avec cette manip tu as dejà une petite protection.
(je m'en sert avec excel 2003 et pas de problemes jusqu'à présent).
tiens moi au courant
Merci |
| |
|
| galopin01 | Posté le 08/09/2008 à 22:13 |
Astucien
4321 Messages
| Une petite démo de récupération de données par RECHERCHEV
Comme il n'est pas possible de rechercher les gens sur leur nom (homonymes) il a été créé une colonne code (unique) qui permet d'identifier chaque quidam sans risque d'erreur.
Nota : Cette solution ne fonctionne que si SEULEs les lignes ont été mélangées. Si en plus les colonnes ont été mélangées c'est carrément le souk...
A+ |
| |
|
| ELICHA | Posté le 09/09/2008 à 05:42 |
Astucien
1656 Messages
| Bonjour, Et on en arrive peu à peu à la préference pour une base de données. C'est à cela que sert Access. Une fois les données entrées, on peut manipuler dans tous les sens. On ne peut pas faire faire à Excel, de façon simple et sans programmation, ce pour lequel il n'est pas fait |
| |
|
| grab | Posté le 09/09/2008 à 06:39 |
Petit astucien
270 Messages
| bonjour à tous,
et merci pour vos propositions.
Effectivement, un certain nombre de vos explications paraîssent un tantinet techniques pour le béotien que je suis.
Ce qui est "marrant" c'est que je venais d'arriver à la conclusion d'ELICHA : créer le document sous Access. Sauf que cela aurait été "coton" de faire un copier/coller de tout ça sur le fichier général, à moins de retransformer tous les documents reçus au format .xls, puis de remettre le tout en forme...
En fait, en faisant un "mix" de ce que proposent motarfou et claudth, je suis parvenu à obtenir ce que je voulais et les tests sont assez concluants car, pour modifier les classeurs, même si cela reste possible, cela se révèle trop fastidieux pour ceux qui voudraient s'y atteler. Du coup, je pense que cela aura un effet dissuasif.
En vous remerciant chacun pour vos interventions, je marque donc ce sujet comme résolu.
Bonne journée à tous. 
Modifié par grab le 09/09/2008 06:40 |
| |
|
|
| Haut de la page |