Bonjour,
On a la possibilité de nous positionner par rapport au bas de la page et de prendre en compte le redimensionnement. Il suffit de savoir comment doivent se repositionner les commandes quand on change de dimension.
Ce qui suit est un exemple qui permet de positionner une forme à 20p du bas et au milieu de l'écran :
.... Sub resizePic()
........ Set ecran = ActiveWindow.VisibleRange
........ With ActiveSheet.Shapes(1)
............ .Left = ecran.Left + ecran.Width / 2 - .Width / 2
............ .Top = ecran.Top + ecran.Height - .Height - 20
........ End With
..... End Sub
Je ne vais pas commenter la macro, je pense qu'elle est assez claire.
En général, on positionne les boutons en bas à gauche. Alors même si l'écran est réduit on peut toujours caser les images à gauches.
Sinon, des macros pour redimensionner les fenêtres peuvent être utilisées. En voici un exemple :
Sub resizeWin()
.... Set ecran = ActiveWindow.VisibleRange
.... With ActiveSheet.Shapes(1)
........ If ActiveWindow.WindowState = xlNormal Then
............ If ecran.Width < .Width Then ActiveWindow.Width = ActiveWindow.Width - ecran.Width + .Width
............ If ecran.Height < .Width Then ActiveWindow.Height = ActiveWindow.Height - ecran.Height + .Height
........ End If
.... End With
End Sub
Que tu met dans l'événement :
Private Sub Workbook_WindowResize(ByVal Wn As Window)
.... resizeWin
End Sub
Je pense que tu peux quand même rendre l'exercice à ton prof ;-)
Par contre le private sub je ne vois pas trop à quoi il sert ...
Il en faudrait un qui lance resizePic dès que l'utilisateur fait défiler sa feuille excel (dès qu'il descend plus bas dans la feuille par exemple)
- on peut mettre la macro resizePic dans un module (Module1 par exemple)
- le "private sub" par contre se crée automatiquement quand on va sur le code de la feuille 1 ("Feuil1") et on bascule la valeur du ComboBox (en haut à gauche) de "Général" vers "Worksheet"
Ca fonctionne bien ! Bien joué faut connaitre la syntaxe !!
Par contre en effet, si on bouge les scrolls via la souris, ca marche plus.
Mais c'est déjà bien sympa là ! Merci.