Survol d'une souris sur une cellule
Bonjour
est -il possible avec une macro qu'au survol de la souris sur une forme appelé rectangle 7
que le contour des cellules e26 et g23 clignote en rouge avec un gros trait continu
merci d'avance
Bonjour,
Tu peux utiliser l'évènement MouseMove d'un contrôle ActiveX (par exemple type Label) pour encadre tes cellules en rouge au survol de la partie centrale (surface par exemple d'un rectangle intérieur dont les 2 dimensions sont égales à la moitié des dimensions correspondantes du contrôle), et supprimer l'encadrement au passage de la souris sur les bords (les coordonnées X et Y du pointeur cette programmation).
Cordialement.
Bonjour
le fichier de Ceuzin est bien mais je n'arrive pas a mettre simplement que les bordures
Private Sub Label1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
d = 3
If X < d Or X > Label1.Width - d Or Y < d Or Y > Label1.Height - d Then
[b2].Interior.ColorIndex = xlNone
[d2].Interior.ColorIndex = xlNone
Else
[b2].Interior.ColorIndex = 3
[d2].Interior.ColorIndex = 3
End If
End Sub
merci d'avance
Private Sub Label1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If X >= 15 And X <= 45 And Y >= 7.5 And Y <= 22.5 And Button = 0 Then
Me.Range("G23,E26").BorderAround Weight:=xlThick, Color:=vbRed
Else
Me.Range("G23,E26").BorderAround Color:=vbWhite
End If
End Sub
Label1 a une hauteur de 30 pts et une largeur de 60 pts.
Bonjour Rodger, MFerrand, Ceuzin,
Bonjour le forum,
un clignotement de bon aloi, comme disait Maître Capello!
Un survol de la Label (activeX) déclenche le clignotement, un clic sur la feuille l'arrête.
A+
Bonjour et merci
en fait je vais adopter le fichier de Ceuzin
parce-que le timer de curulis57 est bien , mais c'est vrai que le clignotement est embêtant a la longue
petit problème quand même ,c'est que quand on part vite du label que je survol les cellules reste en couleur
et si je vais sur un autre label cela me rajoute des cellules en couleur et après je ne sais plus quel label est sélectionner
et pouvez vous réduire cette macro parce-que j'en est au moins 30 a faire
ci-joint fichier
merci d'avance
bonjour
après plusieurs manip différentes je vois que le fait de changer les bordures avec "xlThin" ou "xlThick" me pose des problèmes d’écran
même avec "Application.ScreenUpdating"
c'est le fait que les bordures soient a l’extérieur de la cellule j'ai cherché si il existait une fonction bordure intérieur l'inverse de "BorderAround",mais pas trouvé donc en jouant simplement sur la couleurs des cellules ça le fait sauf toujours se problème de vitesse quand on part vite d'une cellule le changement de couleur ne se fait pas
si quelqu'un a une idée ???
j'ai cherché si il existait une fonction bordure intérieur l'inverse de "BorderAround",
Les bordures restent des bordures, quelle que soit la façon dont on les définit. Borders n'est qu'une propriété permettant de les renvoyer (ou définir) individuellement ou en groupe, et BorderAround une méthode spécifique de définition pour un cas revenant fréquemment. Ce qui ne change rien à la nature des bordures !!!
oui peut-être mais si il y avait "bordure inside" je n'aurai pas se problème de décalage de cellule chaque fois que je passe sur un label qui change mes bordures
c'est la que l'on voit que la toute puissance de excel a ses limites
et de ceux qui s'appuis sur des constructions existantes sans en chercher de nouvelles ne peuvent que se moquer de ceux qui
réfléchissent aux problèmes
ceci dit
il est aussi illogique que lorsque la souris quand elle est a l’extérieur du label et que la cellule reste sur la couleur changée alors que la
macro donne bien
c'est après essai d'avoir diminué la vitesse du pointer de la souris que le label prend bien en compte la macro
a en conclure que le temps de réaction soit de la souris soit de l'ordi peut influencer sur ce type de gadget
(il est vrai que excel par théorie est plus dans les mathématiques qu'un beau visuel est-ce sa faute ,pas sur)
Il faut connaître le modèle objet d'Excel pour pouvoir s'en servir et manipuler les différents objets mis à disposition.
Ensuite il y a toujours quelques réglages à faire pour obtenir la meilleure adaptation en fonction de l'objectif et du contexte d'utilisation.
Et l'on n'oublie pas les réglages système et périphériques extérieurs à Excel...
Il est certain qu'Excel ne fait pas tout... malgré de multiples essais, je n'ai toujours pas réalisé de code pour qu'Excel me serve le café...
Ok je vois que vous êtes un farceur
mais vous ne savez pas lire ou alors vous ne faite que "survoler" les sujets sans les approfondir
la discussion avec vous s’arrête la car je n'y vois aucun intérêt de continuer alors que théoriquement c'est un site d'aide
il y a un proverbe intéressant qui dit
"avant de voir la paille dans l’œil de ton voisin regarde un peu la poutre dans le tien"
bonne réflexion Einstein
Et un autre qui dit "on n'est jamais si bien servi que par soi même".
Déjà je trouvais que MFerrand t'avais répondu bien gentiment vu le ton de ton précédent post
Pour qui tu te prends toi ?
Est-ce notre faute si tu n'es pas capable de comprendre les réponses ? Va t'acheter un cerveau, c'est les soldes...
Allez, va voir ailleurs déverser ta bile débile.
eric
en s'appuyant sur les bases de excel sans en connaitre tout les fondements il était facile de dire
qu'il ne fait pas le café mais en essayant de comprendre le problème il était facile de le détourner, et croyez moi je ne me prend pas pour un dieu, loin de la ,mais moi je n'ai pas l'habitude
de juger ou de me moquer des gens sans comprendre ou chercher l'aide qu'il demande
a bon entendeur Salut
ci -joint fichier avec grosse bordure sans scintillement
Eric, merci pour tes soins protecteurs (ce n'est pa la première fois, j'en suis toujours ému...)
Notre ami Rodger n'est pas spécialement violent dans ses propos et s'il avait commencé par produire un fichier au lieu de vouloir jouer prématurément les donneurs de leçons, il aurait sûrement évité à la discussion de s'enliser...
Je rappelle que la proposition que j'avais formulé s'avérait presqu'identique à celle de Ceuzin, n'en différant que par la proportion centre/bords de l'étiquette pour le déclenchement de MouseMove, ce qui en soi était un point de réglage utile dans la mesure où il constatait semble-t-il que sa manipulation était trop véloce pour laisser l'évènement se déclencher...
Je retire d'ailleurs mon allusion aux réglages Windows, j'avais zappé qu'il y avait eu recours dans une intervention précédentes...
Pour le reste, on était de toutes façons dans des généralités n'effleurant que de loin le sujet proprement dit, et je fais remarquer que les bordures sont définis comme les bords de chaque cellule qui les partage avec les cellules qui lui sont mitoyennes. C'est une copropriété en quelque sorte
Je reviens au sujet : le code de notre ami ne manquant pas de rationalité, j'ai pris le temps de le parcourir plusieurs fois avec attention. Son problème (dérivé) repose en fait sur le déclenchement à répétition de l'évènement qui fait alterner plus ou moins rapidement une alternance d'images du curseur de la souris. Cela peut être désagréable, certes. Mais l'évènement étant prévu pour se déclencher de telle façon, il n'y a pas de solution directe, on ne peut donc que chercher à contourner.
Entre les deux versions, on doit constater qu'il n'y pas différence de nature dans la réaction à l'évènement, mais de degré. La première version comporte plusieurs commandes, ce qui entraine un nombre d'alternance répétées plus important que la seconde qui n'en comporte qu'une...
La version 2 est en effet une solution de contournement possible : opacité du Label, bordure (fictive générée par la couleur de fond). Son défaut : la double inscription étiquette et cellule, entraîne sont déplacement visuel apparent en passant de l'une à l'autre et les bordures ne sont pas visuellement régulières. Ce dernier point devait pouvoir se régler et dimensionnant et positionnant l'étiquette par code VBA (encore que cela n'est jamais garanti compte-tenu que ces valeurs fonctionnent par incréments...
La version 1 me paraît donc meilleure esthétiquement si l'on contourne autrement le problème posé : maintien donc de l'étiquette transparente, dimensionnement à ajuster à la dimension de la cellule, et jouer sur la propriété MousePointer pour éliminer le "scintillement". C'est en effet l'alternance entre pointeur normal et sablier qui provoque cet effet. En définissant le pointeur sur fmMousePointerHourGlass (sablier), le pointeur aura toujours cette apparence, donc plus d'alternance. Il y a toujours en fait alternance mais entre sablier et sablier et les variations sont ramenées à l'interieur du sablier se qui ne provoque plus le même effet de variation que l'alternance entre images différentes du pointeur.
Pour parfaire, les autres éléments de réglage interviennent toujours pour atteindre le meilleur effet visuel souhaité.
Bonne journée à tous.
Bonjour
bien vu pour le mouse pointer mais ce n’était pas vraiment mon problème
moi c'est tout les objets qui disparaissent un quart de seconde et puis reviennent
peut est-ce du a la version d'excel le mien est de 2010
mais pour pas me retarder dans mon travail j'ai choisi juste de changer la couleur de la cellule
comme cela je n'ai plus de saut d'objets
mais par curiosité je chercherai (quand j'aurai le temps)
et merci pour cette longue définition de bordure
cordialement