Microsoft 365 Décalage cases à cocher

cecenico

XLDnaute Nouveau
Bonjour tout le monde,
J'avance sur mon fichier et le problème de liens vers les onglets créés fonctionne correctement.
Sauf que j'ai un autre problème maintenant, c'est que lorsque je trie les machines, les cases à cocher ne suive pas malgré que j'ai bien coché l'option pour qu'elles suivent dans las paramètres.

Comme un exemple vaut mieux que 1000 mots, j'ai mit une partie de mon fichier en pièce jointe.

Son fonctionnement est le suivant:
Rentrez le nom d'une machine dans la case "Entrer ici le nom de la machine à ajouter et cliquer sur "ajouter une machine"" puis cliquez sur "Ajouter une machine"
En gros, le nom inscrit est copié et collé dans la cellule A69 (c'est un hasard promis) de la, je récupère son nom pour créer et lier l'onglet créé puis je trie mes machines par ordre alphabétique.
Le soucie est que les cases à cocher ne suivent pas sur le tableau de gauche alors qu'elles le font sur le tableau de droite alors que la même méthode de trie est utilisée.


J'ai pensé supprimer les cases à cocher qui alourdissent mon fichier mais je n'ai pas trouvé d'autre moyen pour afficher 2 infos dans une cellule (périodicité de la maintenance (une lettre qui donne une couleur) et réalisé ou non).

Comme vous allez le voir, je ne suis pas un grand programmeur VB, je pique des bouts de codes que j'adapte. Vous trouverez probablement que je me suis compliqué la vie mais mes maigres connaissances font que je fais ce que je peux
 

Pièces jointes

  • Plan de maintenance forum.xlsm
    733.7 KB · Affichages: 15
Dernière édition:
Solution
Bonjour Cecenico,
Tout d'abord chapeau pour cette patience infinie avec autant de cases à cocher.
je ne sais pas pourquoi vous avez ce phénomène, et encore moins comment le résoudre.

Je vous propose une autre approche. Supprimer toutes ces cases à cocher et les remplacer par ce petit module qui quand on clique sur une cellule dans les deux plages utiles, on l'efface si elle contient quelque chose, sinon on met "une sorte de case à cocher" faite avec un "T" en police "Wingdings 2" :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo Fin
    If Target.Count > 1 Then Exit Sub                               ' Si plusieurs cellules cliquées, on sort
    DL1 = [A65500].End(xlUp).Row: DL2 = [BX65500].End(xlUp).Row     '...

Statistiques des forums

Discussions
314 626
Messages
2 111 291
Membres
111 092
dernier inscrit
ThomasU3