f2m a écrit :Ce n'est pas des cellules qu'ils faut protéger c'est toute la feuille (les feuilles), mais en permettant de pouvoir écrire dedans!
Comme cela vient après une citation d'un passage de mes réponses, j'en déduis logiquement que ça s'adresse à moi.
Relis : il me semble que mes réponses laissent entendre que j'ai assimilé ce point.
Il y a en tout 40 feuilles dont 10 qui incrémentent automatiquement les autres. Le but est de protéger celles que l'on remplit et qui incrémente. Chaque feuille comporte 12 colonnes et 1500 lignes de saisies.
On le devine comment avec un fichier inexistant ?
Comment tu procèdes avec ta méthode de listener ??
Je garde le listener, je modifie légèrement l'approche au vue d'une précision venue au bout de 48h :
Par exemple quand le dossier est "en cours" le formatage conditionnel de la cellule fait que la cellule vire au rouge, si pas le mot en cours > fond blanc!
Concernant le formatage conditionnel, c'est la seule info : j'en conclus (vraisemblablement hâtivement) que c'est le seul formatage conditionel. Partant de là, sur un évènement
Modification de cellule, dans une plage précise (ou un ensemble de plages précises), si le contenu de la cellule contient "en cours" (ou est strictement égal à, en fonction de la réalité du truc), la macro associée met le fond en rouge, sinon en blanc.
C'est court simple et efficace et exit le formatage conditionnel. Quoi qu'il se passe : saisie ou copie sauvage, le résultat sera identique. Il suffit de tester si la cellule modifiée est dans une plage donnée, si "En cours" est le contenu (ou dans le contenu) de la cellule et associer la macro à l'évènement précité.
Je sais bien que vous aimez bien les visuels mais c'est sur les données (confidentiel) que l'on rentre qu'il y a le formatage conditionnel. De plus poster 10 feuilles différentes ça fait beaucoup et encore ce n'est que pour l'instant!
On n'aime pas les visuels : on demande des fichiers pour gagner du temps, tester la solution sur le cas précis
Le confidentiel peut être rendu anonyme et on n'a pas besoin de 1500 lignes : 5 à 10 qui présentent le cas une fois ou deux, ça le fait.
Idem pour le nombre de feuille si c'est le même mécanisme à mettre en oeuvre : une suffit.
Et d'une manière générale, on préfère éviter d'avoir recours à la boule de cristal.
Par contre l'idée de la macro qui bloque le copier / coller ou qui empêche le coller cela ne vous inspire rien avec les liens que je vous ai mis ?? Certes c'est excel mais "open office " est mieux nan
La provoc ne m'incline pas à chercher s'il existe une méthode équivalente à
CutCopyMode ou comment l'émuler.
Je te conseille donc de faire la connaissance de
XRay.
Ajout : J'ai posté ici un code qui clone une saisie, avec utilisation du listener précité.
Tu y trouveras l'exemple souhaité pour récupérer la cellule modifiée (oEvt.AbsoluteName), après quoi il suffira de modifier la propriété CellBackColor de la cellule. |