mikachu
XLDnaute Occasionnel
Bonjour,
J'ai créé une macro VBA excel pour pouvoir faire un choix multiple sur une listbox et remplir automatiquement la cellule sélectionnée, et inversement, cocher les informations remplies dans la listbox. (voir fichier joint expurgé des données confidentielles, pour le principe de fonctionnement)
En gros, lorsque je sélectionne une cellule de la colonne C:
- Je vérifie que la cellule correspondante de la colonne A n'est pas vide
- Si c'est le cas, j'affiche la listbox remplie avec les sonnées dans la feuille de calcul Feuil2
- Si la case de la colonne C contient déjà des informations, je les récupère pour cocher les cases de la listbox correspondantes
- Lorsque je coche/décoche les cases de la listbox, je mets à jour la cellule sélectionnée
Tout fonctionne nickel, même si j'imagine que l'écriture de la macro pourrait être améliorée. Le problème est sur le positionnement de la listbox. J'utilise les propriétés Listbox1.Top et Listbox1.left pour positionner la listbox juste à droite de la cellule sélectionnée, et cela fonctionne nickel sauf sous office 365.
Je suis sous office 2016, et tout fonctionne correctement, mais lorsqu'une personne avec office 365 utilise le fichier, un décalage de la listbox se fait peu à peu au fur et à mesure qu'on descend dans le tableau, si bien qu'au bout d'un moment elle est carrément hors de l'écran.
Je n'arrive pas à identifier la cause de ce décalage, pouvez-vous m'aider à résoudre ce problème ? J'ai fouillé sur le forum mais je n'arrive pas à trouver de sujet correspondant.
Je joins également deux images pour expliquer le problème
Voilà ce qui se passe
voilà comment ça devrait être
Merci d'avance
J'ai créé une macro VBA excel pour pouvoir faire un choix multiple sur une listbox et remplir automatiquement la cellule sélectionnée, et inversement, cocher les informations remplies dans la listbox. (voir fichier joint expurgé des données confidentielles, pour le principe de fonctionnement)
En gros, lorsque je sélectionne une cellule de la colonne C:
- Je vérifie que la cellule correspondante de la colonne A n'est pas vide
- Si c'est le cas, j'affiche la listbox remplie avec les sonnées dans la feuille de calcul Feuil2
- Si la case de la colonne C contient déjà des informations, je les récupère pour cocher les cases de la listbox correspondantes
- Lorsque je coche/décoche les cases de la listbox, je mets à jour la cellule sélectionnée
Tout fonctionne nickel, même si j'imagine que l'écriture de la macro pourrait être améliorée. Le problème est sur le positionnement de la listbox. J'utilise les propriétés Listbox1.Top et Listbox1.left pour positionner la listbox juste à droite de la cellule sélectionnée, et cela fonctionne nickel sauf sous office 365.
Je suis sous office 2016, et tout fonctionne correctement, mais lorsqu'une personne avec office 365 utilise le fichier, un décalage de la listbox se fait peu à peu au fur et à mesure qu'on descend dans le tableau, si bien qu'au bout d'un moment elle est carrément hors de l'écran.
Je n'arrive pas à identifier la cause de ce décalage, pouvez-vous m'aider à résoudre ce problème ? J'ai fouillé sur le forum mais je n'arrive pas à trouver de sujet correspondant.
Je joins également deux images pour expliquer le problème
Voilà ce qui se passe
voilà comment ça devrait être
Merci d'avance
Pièces jointes
Dernière édition: