Comment bloquer les colonnes en fonction de la date

0

Bonjour

Je souhaiterai que les colonnes dont la date est strictement supérieur à la date du jour soit bloquées par un mot de passe.
Mais qu'elles se débloquent automatiquement quand la date est égale ou inférieur à la date du jour.

Ou alors j'ai mes colonnes dont l'accès est bloqué par "permettre la modification des plages" et quand c'est la date de la colonne le blocage s'enlève pour cette colonne.

C'est un tableau qui est utilisé par plusieurs personnes, je souhaiterais qu'il n'y ai que moi qui puisse modifier une colonne dont la date est futur.
C'est pourquoi je voudrais un mot de passe pour limiter l'accès mais je souhaiterais aussi que ce blocage des cellule s'enlève automatiquement si la colonne est à la date du jour (car je ne suis pas présent tous les jours pour déverrouiller les colonnes).

Voici le lien: https://www.cjoint.com/c/JArorqEU8Yp

Je vous remercie par avance pour votre aide.

manjul Posté le 17 janvier 2020, 15:18
par manjul
Répondre
1

Bonjour et bonne et heureuse année 2020 pleine de projets Excel,

Voici une proposition pour résoudre ta demande :

https://www.cjoint.com/c/JAsrEffWL8z

Il y a un mode d'emploi dans le classeur que tu pourras soit enlever soit Masquer pour les Opérateurs.

Le mot de passe pour le point 3 est "Admin"

Le mot de passe (que tu peux adapter à ta guise) pour enlever les Protections est "test"

J'espère que cela te conviendra.

A+

Chris

NB : le projet était très intéressant


CHRIS Posté le 18 janvier 2020, 18:35
par CHRIS
  • Bonjour et joyeuse année aussi avec pleins de résolutions d'Excel... mais surtout la santé!! Merci pour votre proposition qui est très intéressante. J'aurais une petite précision, je souhaiterais que ce blocage ne s'effectue qu'à des dates que j'aurais spécifié (par une valeur référence dans une ligne cachée). Exemple: blocage des jours en week-end, jours fériés et vacances; mais les jours en semaines hors vacances soient débloqués tout le temps. De plus la colonne du jour actuel est bloquée, je souhaiterais que l'on puisse avoir accès à la colonne du jour actuel. Merci bien – manjul 19 janvier 2020, 12:30
-1

Merci beaucoup

J'ai effectué les réglages en supprimant les dates sur les jours a débloquer tout le temps et rajouter un = pour libérer le jour actuel.

Bravo encore
manjul Posté le 19 janvier 2020, 14:06
par manjul
0

Bonjour,

Content que la solution proposée te convienne.  

Je n'avais pas vu ton message intermédiaire mais au vu de ton dernier message, il semble que tu aies trouvé toutes les solutions.  Pour le jour de la date du jour, je n'avais pas mis le = car tu demandais plus petit que la date du jour.

Pour ce qui est du traitement des jours de congés, j'avoue ne pas bien saisir ta demande mais si tu as trouvé une astuce pour arriver à tes fins ce n'est plus utile.

Si toutefois tu voulais un traitement adapté aux jours de congé, n'hésites pas à me revenir.

A toutes fins utiles, j'ai un petit classeur qui gère automatiquement les jours fériés pour la Belgique, la France et le Canada.  Ce classeur peut être implanté facilement dans n'importe qu'elle classeur.

Bonne continuation

Chris

NB : utilise Répondre si tu veux m'envoyer un message : cela fait augmenter le compteur et ainsi on voit qu'il y a un nouveau message alors que les commentaires ne font pas évaluer le compteur et je ne regarde que quand le compteur évolue... 

CHRIS Posté le 19 janvier 2020, 19:25
par CHRIS
0

Bonjour Chris

J'ai un problème sur le fichier. Je souhaitais laisser libre d'accès à toutes les personnes les colonnes: jours en semaine hors vacances et bloquer uniquement les colonnes concernant WE, fériés et vacances comme par exemple sur le fichier les 3, 6 et 12 février. Pour ce faire j'ai supprimer la date en A1 dans les colonnes que je souhaite laisser libre d'accès.

Dans chaque mois j'ai une macro qui bloque si il y a plus de 12 CA dans la colonne d'un jour.

Quand j'ôte la protection de la feuille et que je rajoute un 13ème CA dans une colonne qui était bloquée comme par exemple le 9 février ou une colonne qui était libre d'accès comme le 6 février; la macro fonctionne correctement et supprime ce 13ème CA.

Mais si je n'ôte pas la protection et que je veux rajouter un 13ème CA dans une colonne libre d'accès comme le 6 février, la macro ne fonctionne pas (le 13ème CA reste) et j'ai un message d'erreur:

"Erreur d’exécution '1004':

Erreur définie par l'application ou par l'objet."

Comment résoudre le problème.

Merci bien


https://www.cjoint.com/c/JAyooH1BeVp

manjul Posté le 24 janvier 2020, 15:15
par manjul
0

Bonjour manjul,

Je m'aperçois que ma réponse a disparu.  Il semblerait qu'il se passe des perturbations sur le site.  Il y a en effet des messages qui n'ont rien à voir avec le site.  Cela est déjà arrivé dans le passé.

Quoiqu'il en soit, je refais ma réponse et t'envoie ton classeur adapté.

https://www.cjoint.com/c/JAzkaug8Afz

En fait l'erreur se produit car ton VBA essaie de modifier un onglet protégé... cela ne peut naturellement pas se faire.  J'ai donc ajouté la dé-protection de l'onglet et ensuite sa protection après les modifications.  Naturellement il fallait le mot de passe et donc j'ai du aller le chercher dans l'onglet Technique.

Je ne saisi pas l'entièreté de ton application (tu n'as pas donné beaucoup d'explications et, quand on est hors contexte, ce n'est pas évident de comprendre ce que tu veux réaliser) et donc je me suis contenté de répondre à ta question sur l’arrêt du VBA.

Toutefois je m'interroge sur le fait que tes calculs se fasse à partir de 9ème ligne et pas de la 6ème.  Pourquoi les 3 premières personnes ne sont elles pas inclues dans le calcul des jours ??

Autre remarque : les variables publiques ne doivent être déclarées qu'une seule fois (voir le module 1).  Elles restent valables pour tous les vba du classeur.

Dis moi si tout fonctionne comme tu le désires.

A bientôt

Chris

CHRIS Posté le 25 janvier 2020, 11:21
par CHRIS

Si vous n'êtes pas inscrit sur le site, vous pouvez poster librement (en tant qu'invité).
Pour cela, indiquez un pseudonyme (nom d'utilisateur) et une adresse email :