Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Bloquer des plages de cellules

kel07

XLDnaute Nouveau
Bonjour,

Dans le fichier Excel sous l’onglet horaire il faudrait que les personnes puissent modifier seulement les cellules pour une période de 3 semaines.

Exemple :

  • Selon la date du jour (disons Aujourd’hui le 15 Mars 2024).
  • La modification des semaines antérieur et des 7 jours suivants ne sont plus modifiables.
  • Donc du mois d’août 2023 au 22 Mars 2024, aucune modification à l’horaire ne peut être accordée.
  • Des ajouts sur les trois semaines suivantes sont possible soit du 25 mars au 12 avril 2024.
  • Et encore une fois il n’y a pas de modification possible du 15 avril au 1 juillet 2024.
  • À chaque nouvelle journée, la plage horaire modifiable et non modifiable change d’une journée.


Exemple 2

  • Selon la date du jour (disons Aujourd’hui le 16 Mars 2024).
  • La modification des semaines antérieur et des 7 jours suivants ne sont plus modifiables.
  • Donc du mois d’août 2023 au 23 Mars 2024, aucune modification à l’horaire ne peut être accordée.
  • Des ajouts sur les trois semaines suivantes sont possible soit du 26 mars au 13 avril 2024.
  • Et encore une fois il n’y a pas de modification possible du 15 avril au 1 juillet 2024.
  • À chaque nouvelle journée, la plage horaire modifiable et non modifiable change d’une journée.


  • Bien sûr que la personne en charge de l’Excel peut changer des choses à sa guise. Il suffirait d’un mot de passe de « l’administration ».
 

Pièces jointes

  • Horaire des sciences (M Trottier-Letarte) (1).xlsx
    385.6 KB · Affichages: 12

kel07

XLDnaute Nouveau
Malheureusement, je connais pas les VBA et je ne comprends pas du tout ton message et ce que je dois faire. C'est beaucoup trop complexe pour moi.
 

TooFatBoy

XLDnaute Barbatruc
Il faudrait vraiment trouver pourquoi chez toi la date n'est pas trouvée.

Je ne suis pas sûr de bien comprendre : si aujourd'hui tu télécharges le fichier de #4, as-tu le problème de date non trouvée, ou pas ?
 

TooFatBoy

XLDnaute Barbatruc
Donc tu ouvres VBE (Visual Basic Editor) par la combinaison de touches <Alt>+<F11>.
A gauche tu dois avoir la liste des feuilles.

Tu double-cliques sur "ThisWorkbook".
Son code doit s'afficher. Il n'y a qu'une seule macro : "Workbook_Open".

Dans cette macro, il n'y a qu'une seule instruction.
Cette instruction appelle la macro qui se nomme "interdiction".

C'est ça que sousou veut te faire bloquer pour l'instant.

Donc tu mets le curseur devant le nom "interdiction" et tu saisies une apostrophe.
La ligne doit alors devenir verte, ce qui veut dire qu'elle en commentaire et donc inactive.
 
Dernière édition:

TooFatBoy

XLDnaute Barbatruc
OK, donc maintenant tu as compris le principe pour inhiber une instruction : on la met en commentaire en mettant une apostrophe devant.
Donc, bien sûr, pour réactiver l'instruction, tu enlèves l'apostrophe.



Je te propose un autre test que celui que voulait te faire faire sousou.

Enlève l'apostrophe pour réactiver l'appel de la macro "interdiction".

Ensuite double-clique sur le Module11 pour voir son code.
Il y a plusieurs macros, dont "nommois".
Dans cette macro tu as une ligne
VB:
Set jour = zone.Find(d1, LookIn:=xlValues)
Enlève le 1 pour avoir
VB:
Set jour = zone.Find(d, LookIn:=xlValues)

Clique n'importe où dans la macro "interdiction".
Appuie sur la touche <F5> pour lancer la macro "interdiction".
 
Dernière édition:

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…