affiche userform en fullscreen pour tte résolutions

L

Leeloo

Guest
Bonjour,

Il y a 2-3 semaines, j'ai sollicité l'aide de qq1 pour m'expliquer comment régler mes pb de résolutions d'écran :
je souhaite que d'un ordi à un autre, les décors que j'ai crée apparaissent en plein écran, et non pas en tout petit de manière excentrée.

Le code qui m'avait été proposé était :

Option Explicit
Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
'Constantes utilisées par GetSystemMetrics
Const SM_CXSCREEN = 0 ' Largeur de l'écran
Const SM_CYSCREEN = 1 ' Hauteur de l'écran

Sub Taille()
Dim XVal As Long, YVal As Long
Dim Resolution As String
Dim ZoomZoom As Integer
YVal = GetSystemMetrics(SM_CYSCREEN)
XVal = GetSystemMetrics(SM_CXSCREEN)
Resolution = XVal & " x " & YVal
On Error GoTo Message

If Resolution = "1280 x 1024" Then ZoomZoom = 120
If Resolution = "1400 x 1280" Then ZoomZoom = 200
If Resolution = "1400 x 1024" Then ZoomZoom = 200
If Resolution = "1280 x 960" Then ZoomZoom = 110
' If Resolution = "XXXX x XXX" Then ZoomZoom = ?? <= Si votre résolution est non prévue...
If Resolution = "1280 x 720" Then ZoomZoom = 90
If Resolution = "1152 x 864" Then ZoomZoom = 80
If Resolution = "1024 x 768" Then ZoomZoom = 75
If Resolution = "800 x 600" Then ZoomZoom = 50
If Resolution = "640 x 480" Then ZoomZoom = 30


Exit Sub


Message:
MsgBox "Votre écran a une résolution non prévue de " & XVal & " par " & YVal & _
Chr(10) & "Modifier la macro en fonction...Thierry", vbInformation, "Macro 'Taille' à modifier !"
End Sub



Malheureusement je n'ai pas réussi à le faire fonctionner (pourtant c'est pas faute de m'être acharnée...mais faut croire que je suis nulle)
Bref, si qq1 sait comment faire pour déclencher automatiquement à l'ouverture de la macro l'affichage des userforms en fullscreen, ça m'aiderait bcp!
Merci d'avance!
 
J

jacquesderyes

Guest
Bonsoir Leelou et les amis du forum

Pour mémoire:
Pour afficher un UF en plein ecran la macro ci-dessous convient.


à placer dans le code du UF


Private Sub UserForm_Activate()

With Application
Me.Top = .Top
Me.Left = .Left
Me.Height = .Height
Me.Width = .Width
End With

End Sub

Excel est totalement caché par le UF.Donc il est inutile de mettre Application.Hide ou Application.Show dans le code
Seuls apparaissent la barre de titre du UF et la croix de fermeture.
Malheureusement les contrôles ne se repositionnent pas en fonction de la nouvelle taille du UF.Ils conservent leurs positions et leur tailles respectives tels qu'ils auraient à l'écran si le UF n'avait pas été"gonflé".
Je t'ai passé ce bout de code pour le cas où celà pourrait t'aider un peu.

La barre de titre peut être enlevée moyenant un code un peu tordu faisant appel a des fonctions et des définitions de propriétés.


Bien amicalement
Jacques de ryes
 

Discussions similaires

Statistiques des forums

Discussions
312 109
Messages
2 085 384
Membres
102 878
dernier inscrit
asmaa