XL 2010 Personnalisé son affichage et le protéger par un mot de passe

BMA GESTION

XLDnaute Nouveau
Bonjour à tous,

J'ai une base de données clients et 4 intervenants qui complètent cette base - on sait pour chaque client, quel intervenant l'a enregistré.
Pour des raisons de confidentialités/de discrétion, j'aimerais que l'intervenant n°1 accède seulement à sa base clientèle et pas aux informations des 3 autres intervenants.
Je peux créer un affichage personnalisé (je met un filtre sur le nom de l'intervenant) mais puis-je protéger l'affichage personnalisé par un mot de passe ?
Ou bien est-ce que je dois créer une feuille protégée par intervenant ?

Merci encore pour votre aide,

M-A
 

Dudu2

XLDnaute Barbatruc
Bonjour,
L'état filtré d'une colonne ne peut pas être protégé, et une feuille protégée n'empèchera pas qu'elle soit visualisée.
Il faut masquer les feuilles des intervenants et protéger la structure du classeur puis dynamiquement selon l'intervenant par une Macro lui afficher uniquement sa feuille après saisie de son mot de passe. Et protéger l'accès au VBA qui devra manipuler le mot se passe du classeur et des intervenants dans le code. Ou encore créer dynamiquement une feuille pour l'intervenant dont les données seraient extraites de la feuille principale masquée.
Si c'est juste pour voir autant exporter un fichier PDF par intervenant dont la création serait protégée par un mot de passe sollicité par une Macro.
Ou encore une classeur Excel temporaire "client" dont le contenu serait généré pour un intervenant après mot de passe par une Macro à partir du classeur principal "serveur" protégé lui-même avec un mot de passe. Ce qui permettrait une consultation quasi simultanée par les divers intervenants.
 
Dernière édition:

Dudu2

XLDnaute Barbatruc
Est-ce que les intervenants sont susceptibles de modifier leurs données lors de la visualisation personnalisée ?
Est-ce que les intervenants sont susceptibles de travailler en même temps sur leurs données ?
Est-ce que leurs stations de travail sont en réseau ?
Est-ce qu'il y a un Drive réseau ?
 

BMA GESTION

XLDnaute Nouveau
Merci à nouveau Dudu2.
Je ne doute pas 5 secondes que ca ne soit pas évident :)

Est-ce que les intervenants sont susceptibles de modifier leurs données lors de la visualisation personnalisée ? oui
Est-ce que les intervenants sont susceptibles de travailler en même temps sur leurs données ? non, pas réellement
Est-ce que leurs stations de travail sont en réseau ? non
Est-ce qu'il y a un Drive réseau ? non
 

Dudu2

XLDnaute Barbatruc
Bonjour,
S'il n'y a pas de réseau commun, comment comptes-tu partager les données ou au moins mettre à leur disposition leurs parties de classeur et récupérer les données qu'ils auront mises à jour ? Par échange de mail ou de fichier ?
 

BMA GESTION

XLDnaute Nouveau
Bonsoir,

A nouveau merci pour votre retour. Je m'excuse pour mon manque de précision; le fichier est sur une Dropbox et donc partagé en lien. Il est donc en réseau entre 4 professionnels.
Cela-dit la probabilité qu'ils interviennent de façon simultanée sur le fichier est faible pour ne pas dire inexistante.

J'aurais aimé trouvé une solution (via des configurations de présentation) pour qu'ils puissent intervenir sur une feuille commune (la base de donnée client à compléter au gré des inscriptions) mais selon l'intervenant, un filtre dans une colonne permettrait de faire apparaître seulement les lignes lui correspondant. Ensuite je protégerai la feuille de façon à ce qu'aucun intervenant puisse modifier la fonction filtre/macro qui lui est dédié. Chacun aurait donc une sorte d'accès personnalisé pour sa clientèle et une autre personne aurait la gestion du fichier global.

J'ai regardé quelques tutos sur les macros et ca semble simple de mettre en place une macro par intervenant mais je ne vois pas comment solutionner l'idée d'un accès "privé/personnalisé" protégé par un mot de passe. En tout cas, merci bcp de m'avoir aiguillé sur cet outil que je connaissais pas :)
 

Dudu2

XLDnaute Barbatruc
Bonjour,
En faisant quelques essais, il semble possible de verrouiller un filtre sur une colonne contrairement à ce que j'ai dit au début.
Il faut déverrouiller toutes les cellules de la feuille, puis verrouiller les cellules identifiant les intervenants (pas forcément toute la colonne).
En faisant un filtre sur la colonne identifiant les intervenants puis en mettant un mot de passe sur la feuille, le filtre devient non modifiable.

Tout ça doit être contrôlé par une Macro pour:
- Présenter la feuille vide de toute ligne à part la ligne titre (soit par filtre dans une feuille protégée, soit par masquage des lignes)
- Saisir un mot de passe spécifique de l'intervenant (mot de passe stocké dans le VBA)
- Déprotéger la feuille pour faire le filtre spécifique de l'intervenant (prévoir un mot de passe administrateur pour tout voir)
- Reprotéger la feuille avec son mot de passe
- Protéger le VBA avec un mot de passe (bien qu'il soit toujours possible de le craquer avec un logiciel dédié) pour que les intervenant ne puissent y lire les mots de passe feuille et intervenants.
- Avant l'enregistrement du fichier, replacer filtre ne montrant aucune ligne
 

Dudu2

XLDnaute Barbatruc
La méthode consistant à dédier une feuille par intervenant est sans doute plus simple à gérer et offrant le plus de souplesse. Il est facile de masquer les feuilles non concernées et de protéger la structure du classeur.
Plusieurs options:
- Avoir un processus d'extraction des données de l'intervenant pour générer dynamiquement cette feuille et un processus inverse pour réintégrer ses données dans la feuille générale, à condition d'avoir un critère d'ordonnancement (date, n°, ...) pour la réintégration.
- Avoir des feuilles dédiées à chaque intervenant et, si besoin d'une vision globale, un processus d'intégration dans une feuille dynamiquement générée à condition d'avoir un critère d'ordonnancement (date, n°, ...) pour l'intégration.

Si tu ne sais pas comment faire, je peux éventuellement t'aider à coder à mes heures perdues mais il faut que tu partages ton fichier.
Soit avec des données bidon s'il est confidentiel, soit seulement avec moi-même pour en limiter la diffusion, et comme je ne crois pas qu'on puisse envoyer un mail privé sur ce forum, utiliser le forum de PC Astuces dans la rubrique Bureautique et échanger par mail privé.
 

Dudu2

XLDnaute Barbatruc
Et j'oublie une 4ème possibilité consistant à avoir un classeur par Intervenant protégé par masquage de feuille et mot de passe et un classeur contenant une macro capable d'intégrer les informations de tous les classeurs. Dans ce cas plus de problème de partage de fichier.
Le tout dans un répertoire Dropbox dédié à télécharger pour avoir tous les fichiers à disposition.
 

BMA GESTION

XLDnaute Nouveau
Bonjour,

Wahou, merci pour ces réponses ultra-complètes. Je vais envisager de vous partager mon classeur mais avant je vais essayer cette méthode:
- Avoir des feuilles dédiées à chaque intervenant.

Pour générer automatiquement le fichier global, on est d'accord que la mise en place d'un tableau dynamique suffit?

Merci encore pour votre aide précieuse!

Bon dimanche :)
 

Dudu2

XLDnaute Barbatruc
Pour générer la feuille ou le fichier global, il faut faire du code qui regroupe les informations des feuilles ou des fichiers individuels, et ce code doit savoir quels sont les critères d'intégration et de présentation des données. Je suppose que tu sais comment intégrer ces différentes sources pour en faire une présentation globale.

Avoir des feuilles dédiées par intervenant ne règle pas le conflit d'accès au fichier. Personnellement j'aurais choisi la solution du classeur dédie, mais c'est ton projet.
Le classeur présenté au téléchargement doit avoir toutes ses feuilles intervenant masquées et avoir sa structure protégée par mot de passe connu seulement de l'administrateur et hélas du code VBA (à protéger également)
D'ailleurs par sécurité, à l'ouverture du classeur, cette situation doit être vérifiée et rétablie si nécessaire.
Donc seule une feuille d'accueil invitant à la saisie du mot de passe Intervenant doit être présentée.
C'est le rôle d'un bout de code de saisir et vérifier le mot de passe de l'intervenant, de dévérouiller la structure classeur pour lui présenter sa feuille et de re-verrouiller la structure du classeur dans la foulée. Le mot de passe de l'intervenant peut-être défini en clair sur sa page à un endroit prédéfini pour qu'il puisse le voir et le changer à sa guise.
A la fermeture du classeur, ou plutôt à chaque sauvegarde, le même code qui a servi à l'ouverture à rétablir la situation de masquage de toutes les feuilles doit être exécuté de manière à n'avoir jamais un classeur enregistré où une feuille intervenant serait visible.

Edit: en termes de sécurité il serait bon de stocker automatiquement quelque part à la sauvegarde du classeur les éléments des variables d'environnement Windows propres au PC et à l'utilisateur pour tracer et afficher à la prochaine ouverture l'auteur et la date de la dernière mise à jour.
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 304
Messages
2 087 054
Membres
103 443
dernier inscrit
ttttttttttttttttt