Re : Clignotement, épaisseur du trait...
Bonjour à tous
Les fichiers proposés en pièces jointes par J.B. m'aident bien, mais vu mon niveau en VBA, je n'arrive pas à faire exactement ce que je veux. Je cherche sur son site, dans la partie shape, mais bon, si vous pouviez m'aider...
Par exemple, le fichier SurvolChamp6 ci-dessus fonctionne bien, sauf que... si les lignes n'ont pas toutes la même hauteur, le nom sélectionné (la cellule en rouge) n'est pas en dessous du curseur. Idem si on adopte un affichage plein écran, sans la bande des menus ou si on se place plus bas sur la feuille, lorsque la liste des noms est trop grande pour apparaitre en entier à l'écran (une cinquantaine de noms sur mon fichier réel).
Cela vient entre autre de la partie suivante de la macro
d = 3
If X < d Or X > Label1.Width - d Or Y < d Or Y > Label1.Height - d Then
Range("champ").Interior.ColorIndex = xlNone
Else
Hcel = Range("champ").Cells(1, 1).Height
Lcel = Range("champ").Cells(1, 1).Width
Yc = Int(Y / Hcel)
Xc = Int(X / Lcel)
puisque dans celle-ci, ce sont la hauteur et la largeur de la 1ère cellule de la plage "Champ" qui sont prises comme référence. Si les autres lignes n'ont pas la même hauteur, cela ne convient pas et le nom sélectionné n'est pas celui en dessous du curseur. Il faudrait trouver une astuce pour obtenir un positionnement plus précis. J'ai bien essayé en mettant un coefficient au bout des lignes Hcel = et Lcel = , mais c'est du bricolage, et cela ne fonctionne pas bien dans tous les cas.
Je met en pièce jointe le fichier de J.B. modifié pour que vous compreniez mieux le problème. La correspondance curseur-nom sélectionné est bonne en haut de la liste, mais cela devient très chaotique vers le bas.
Merci pour vos propositions.
@ plus