Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

position Top et Left d'une barre d'outils

3 réponses
Avatar
laurent.daures
Bonjour,
pas si simple qu'il n'y paraît,
je voudrais positionner une barre d'outils (créée par macro)
en fonction d'une cellule.
Bien sûr en utilisant Top et Left de la cellule,
mais il y a un hic (Hips dirait qui vous savez;-)))

c'est que ce Top et Left ne sont pas les mêmes suivant que l'application est
en mode
XlMaximized ou XlMinimized ou bien si l'on a réduit la fenêtre.
Ce qui fait que ma barre d'outils se promène plus ou moins haut suivant la
modification
apportée à la fenêtre, ce qui a tendance à m'irriter.

De plus, le top Left de ma barre d'outils ne correspond absolument pas à
celui de la cellule.
Voilà, si quelqu'un a une idée, je suppose qu'il faut faire un savant calcul
suivant la résolution de l'écran, la taille de la fenêtre, l'âge du
capitaine peut être.
Mon neurone ne suit plus, snif!
Merci d'avance
Amicalement
Siesting Hoax

3 réponses

Avatar
michdenis
Il doit y avoir des trucs plus compliqués....

mais pour obtenir la référence que tu désires
pour le point "Top d'une cellule particulière lorsque
l'application est dans une fenêtre maximisée, il y
a ceci :

'---------------------------
Application.ScreenUpdating = False
statut = Application.ActiveWindow.WindowState
Application.ActiveWindow.WindowState = xlMaximized
x = Range("G25").Top
Application.ActiveWindow.WindowState = statut
MsgBox x
'---------------------------





"laurent.daures" a écrit dans le message de news:
49073daf$0$877$
Bonjour,
pas si simple qu'il n'y paraît,
je voudrais positionner une barre d'outils (créée par macro)
en fonction d'une cellule.
Bien sûr en utilisant Top et Left de la cellule,
mais il y a un hic (Hips dirait qui vous savez;-)))

c'est que ce Top et Left ne sont pas les mêmes suivant que l'application est
en mode
XlMaximized ou XlMinimized ou bien si l'on a réduit la fenêtre.
Ce qui fait que ma barre d'outils se promène plus ou moins haut suivant la
modification
apportée à la fenêtre, ce qui a tendance à m'irriter.

De plus, le top Left de ma barre d'outils ne correspond absolument pas à
celui de la cellule.
Voilà, si quelqu'un a une idée, je suppose qu'il faut faire un savant calcul
suivant la résolution de l'écran, la taille de la fenêtre, l'âge du
capitaine peut être.
Mon neurone ne suit plus, snif!
Merci d'avance
Amicalement
Siesting Hoax
Avatar
Michel Pierron
Bonsoir Laurent;
Quelque chose comme (à adapter en fonction de tes propres critères range et
nom de la barre d'outils):
With Range("E3")
MaBarre.Top = ActiveWindow.PointsToScreenPixelsY(.Top * 4 / 3) * 3 / 4
MaBarre.Left = ActiveWindow.PointsToScreenPixelsX(.Offset(0, 1).Left * 4 /
3) * 3 / 4
End With

MP

"laurent.daures" a écrit dans le message de
news:49073daf$0$877$
Bonjour,
pas si simple qu'il n'y paraît,
je voudrais positionner une barre d'outils (créée par macro)
en fonction d'une cellule.
Bien sûr en utilisant Top et Left de la cellule,
mais il y a un hic (Hips dirait qui vous savez;-)))

c'est que ce Top et Left ne sont pas les mêmes suivant que l'application
est en mode
XlMaximized ou XlMinimized ou bien si l'on a réduit la fenêtre.
Ce qui fait que ma barre d'outils se promène plus ou moins haut suivant la
modification
apportée à la fenêtre, ce qui a tendance à m'irriter.

De plus, le top Left de ma barre d'outils ne correspond absolument pas à
celui de la cellule.
Voilà, si quelqu'un a une idée, je suppose qu'il faut faire un savant
calcul suivant la résolution de l'écran, la taille de la fenêtre, l'âge du
capitaine peut être.
Mon neurone ne suit plus, snif!
Merci d'avance
Amicalement
Siesting Hoax




Avatar
laurent.daures
bonsoir Michel,
merci,
cela semble convenir,
je teste ça demain sur un autre écran.
Merci à Denis aussi.
Amicalement
Siiesting Hoax (il flotte aujourd'hui à Marseillle)
"Michel Pierron" a écrit dans le message de news:

Bonsoir Laurent;
Quelque chose comme (à adapter en fonction de tes propres critères range
et nom de la barre d'outils):
With Range("E3")
MaBarre.Top = ActiveWindow.PointsToScreenPixelsY(.Top * 4 / 3) * 3 / 4
MaBarre.Left = ActiveWindow.PointsToScreenPixelsX(.Offset(0, 1).Left * 4 /
3) * 3 / 4
End With

MP

"laurent.daures" a écrit dans le message de
news:49073daf$0$877$
Bonjour,
pas si simple qu'il n'y paraît,
je voudrais positionner une barre d'outils (créée par macro)
en fonction d'une cellule.
Bien sûr en utilisant Top et Left de la cellule,
mais il y a un hic (Hips dirait qui vous savez;-)))

c'est que ce Top et Left ne sont pas les mêmes suivant que l'application
est en mode
XlMaximized ou XlMinimized ou bien si l'on a réduit la fenêtre.
Ce qui fait que ma barre d'outils se promène plus ou moins haut suivant
la modification
apportée à la fenêtre, ce qui a tendance à m'irriter.

De plus, le top Left de ma barre d'outils ne correspond absolument pas à
celui de la cellule.
Voilà, si quelqu'un a une idée, je suppose qu'il faut faire un savant
calcul suivant la résolution de l'écran, la taille de la fenêtre, l'âge
du capitaine peut être.
Mon neurone ne suit plus, snif!
Merci d'avance
Amicalement
Siesting Hoax