Gérer le zoom sur un userform

Bonjour,

J'utilise un USF assez long, je fait apparaitre un scrollbar (ascenseur) quand l'USF dépasse l’écran.

J'aimerai utiliser le zoom, réduire ou augmenter en fonction du besoin.

Petit bémol, quand je réduis (5 ou plus clic sur le -) j'aimerai réduire la largeur de width et height automatiquement, qui s'adapte

Vos idée sont les bienvenues...

17classeur1.xlsm (29.68 Ko)

Bonjour,

C'est très complexe car cela implique de recalculer la position + dimension de tous tes contrôles, en évitant les chevauchements, etc…

Personnellement je te conseillerai de jeter un oeil aux menus multipage. Si tu as besoin d'autant de place c'est que probablement tu peux déplacer certaines infos sur d'autres pages, puisque a priori l'UF est déjà trop grand pour tout avoir sur l'écran.

MultiPage control | Microsoft Learn

Bonjour,

au cli sur - et + vous voulez que le USF suive la réduction ou augmentation ?
Alors ajoutez les code de redimensionnement :

Private Sub SpinButton1_SpinDown()
    Me.Zoom = Me.Zoom - 5
    Me.Width = Me.Width - (Me.Width * 5 / 100)
    Me.Height = Me.Height - (Me.Height * 5 / 100)
End Sub

Private Sub SpinButton1_SpinUp()
    Me.Zoom = Me.Zoom + 5
    Me.Width = Me.Width + (Me.Width * 5 / 100)
    Me.Height = Me.Height + (Me.Height * 5 / 100)
End Sub

@ bientôt

LouReeD

Bonjour,

au cli sur - et + vous voulez que le USF suive la réduction ou augmentation ?
Alors ajoutez les code de redimensionnement :

Private Sub SpinButton1_SpinDown()
    Me.Zoom = Me.Zoom - 5
    Me.Width = Me.Width - (Me.Width * 5 / 100)
    Me.Height = Me.Height - (Me.Height * 5 / 100)
End Sub

Private Sub SpinButton1_SpinUp()
    Me.Zoom = Me.Zoom + 5
    Me.Width = Me.Width + (Me.Width * 5 / 100)
    Me.Height = Me.Height + (Me.Height * 5 / 100)
End Sub

@ bientôt

LouReeD

...

Bonjour

Merci à vous d'avoir pris le temps.

Je test cela

Rechercher des sujets similaires à "gerer zoom userform"