IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

L'userform et son contenu qui s'adapte a l'écran


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2006
    Messages
    300
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 300
    Points : 107
    Points
    107
    Par défaut L'userform et son contenu qui s'adapte a l'écran
    Bonjour

    Voilà, je reviens sur ma question de l'autre jour, afin que mon userform s'adapte à l'écran, et j'ai bien trouvé la réponse dans la FAQ, mais moi ce que j'aimerais c'est que tout s'adapte (les combobox, les textbox tout ce qui se trouve a l'intérieur de l'USF afin de pouvoir tout visualiser sur un écran 15" ou 19")
    Là le code effectivement fonctionne et redimensionne bien mon USF, mais, pas le contenu. Est ce que cela est possible ??????

    ce que j'ai en ce moment

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    'afin que l'userform s'adapte au écran
        With Me
            .StartUpPosition = 3
            .Width = Application.Width
            .Height = Application.Height
            .Left = 0
            .Top = 0
        End With
    Ce que j'avais avant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub UserForm_Initialize()
      Dim hWnd As Long, exLong As Long, zFactor As Integer
     
      hWnd = FindWindowA(vbNullString, Me.Caption)
      exLong = GetWindowLongA(hWnd, -16)
      If exLong And &H880000 Then SetWindowLongA hWnd, -16, exLong And &HFF77FFFF
      zFactor = 100 * CInt(Application.Width / Me.Width)
      Me.Width = Application.Width
      Me.Height = Application.Height
     
    End Sub
    cordialement

    Didier

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    753
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 753
    Points : 855
    Points
    855
    Par défaut
    Ce sont les mêmes propriétés pour les objets à l'intérieur du userform sauf que c'est par rapport aux bords du userform pour Left et Top.

    Tu peux donc faire des calculs en définissant des séparations fixes par rapport aux 4 bords du userform et entre elles: à partir de ces séparations cela te donnera toutes les propriétés de tes objets de userform pour pouvoir les positionner et redimmensionner de façon impeccable.

    Tu programme tout ça dans l'évènement Resize de ton userform et tu auras quelque chose qui s'adaptera à absolument n'importe quelles dimmensions, du moment que tu ne le redimmensionnes pas trop petit.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [OL-2010] Tâche (et son contenu) qui disparaissent
    Par titanhermes dans le forum Outlook
    Réponses: 2
    Dernier message: 01/10/2015, 21h02
  2. Image qui s'adapte aux petits écrans mobiles
    Par koKoTis dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 20/12/2013, 08h17
  3. DIV absolute qui s'adapte en hauteur à son contenu
    Par Khleo dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 07/06/2011, 20h24
  4. Réponses: 5
    Dernier message: 18/12/2010, 20h14
  5. Réponses: 4
    Dernier message: 10/06/2009, 12h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo