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 :

adapter fenetre a chaque ecran pc


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 53
    Points : 34
    Points
    34
    Par défaut adapter fenetre a chaque ecran pc
    Bonjour

    j'ai réalisé une application en .xls que plusieurs personnes ouvriront.

    seulement les personnes ont des écrans différents.


    j'ai lu pas mal de forums sur le changement de résolution etcc.. mais je veux seulement que mon appli qui s'ouvre en plein ecran s'adapte a la taille de l'ecran ou pourquoi pas trouver une taille mini qui irait pour tout le monde


    voila comment faire simple et efficace

    Merci

  2. #2
    Membre chevronné Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Points : 1 999
    Points
    1 999
    Par défaut
    Pourquoi pas comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.WindowState = xlMaximized

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 53
    Points : 34
    Points
    34
    Par défaut resolution ecran
    Re
    avec le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.WindowState = xlMaximized
    c'est toujours aussi grand
    je crois qu'il faut que je réduise la résolution

    en fait n'est il pas possible de trouver un code qui dise la largeur de l'application = la largeur de l'écran
    idem pour la hauteur


    Merci

  4. #4
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 944
    Points : 1 282
    Points
    1 282
    Par défaut
    Un code trouvé sur un jour sur le net (et testé)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Option Explicit
     
    Declare Function GetSystemMetrics Lib "User32" (ByVal nIndex As Long) As Long
     Const SM_CXSCREEN = 0
     Const SM_CYSCREEN = 1
     
     
    Sub AfficherInfoVideo()
        Dim LargeurVid As Long, HauteurVid As Long
        Dim msg As String
        LargeurVid = GetSystemMetrics(SM_CXSCREEN)
        HauteurVid = GetSystemMetrics(SM_CYSCREEN)
        msg = "Le mode vidéo courant est : "
        msg = msg & LargeurVid & " X " & HauteurVid
        MsgBox msg
    End Sub
    --------------
    Frédéric
    http://www.access-developpement.com

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 53
    Points : 34
    Points
    34
    Par défaut
    Re

    merci mais ou placer ce code ???

    dans WorkBook_Open () ???

    Est ce que c'est juste une macro qui donne les infos de résolution ou ca change la resolution ??
    merci

    Re

    Bon j'ai essayé j'ai du déplacé qques boutons qui n'apparaissaient pas.

    et pour une userform trop grande ??

    Faut il la diminuer de taille ou peut elle s'adapter a l'écran ???

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Vous pouvez essayer ce code, que j'ai trouvé, sous une forme plus complexe je ne sais plus où et que j'ai simplifié en fonction de mes besoins.

    dans un module :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
     
    Option Explicit
    Public Declare Function GetSystemMetrics Lib "user32" _
    (ByVal nIndex As Long) As Long
    Public Declare Function GetDC Lib "user32" _
    (ByVal hwnd As Long) As Long
    Public Declare Function GetDeviceCaps Lib "gdi32" _
    (ByVal hDC As Long, ByVal nIndex As Long) As Long
    Public Declare Function ReleaseDC Lib "user32" _
    (ByVal hwnd As Long, ByVal hDC As Long) As Long
    Public Const LOGPIXELSX = 88
    Public Const POINTS_PER_INCH As Long = 72
     
    Public Function ScreenWidth() As Long
    ScreenWidth = GetSystemMetrics(SM_CXSCREEN)
    End Function
    Public Function PointsPerPixel() As Double
    Dim hDC As Long
    Dim lDotsPerInch As Long
    hDC = GetDC(0)
    lDotsPerInch = GetDeviceCaps(hDC, LOGPIXELSX)
    PointsPerPixel = POINTS_PER_INCH / lDotsPerInch
    ReleaseDC 0, hDC
    End Function
    Public Function ScreenHeight() As Long
    ScreenHeight = GetSystemMetrics(SM_CYSCREEN)
    End Function
     
    Sub Essai()
    UserForm1.Show
    End Sub
    Dans le code de votre ou vos formulaire(s) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Option Explicit
     
    Sub UserForm_Initialize()
    Dim RW As Single, RH As Single
    Dim Ctl As MSForms.Control
     
    RW = ScreenWidth * PointsPerPixel / Me.Width
    RH = ScreenHeight * PointsPerPixel / Me.Height
     
    Me.Width = ScreenWidth * PointsPerPixel
    Me.Height = ScreenHeight * PointsPerPixel
     
     
    'Permet de redimensionner tous tes contrôles présent sur l'UserForm en 'fonction de la taille de l'userForm et de la taille de l'écran
    For Each Ctl In Me.Controls
    Ctl.Move Ctl.Left * RW, Ctl.Top * RH, Ctl.Width * RW, Ctl.Height * RH
    Next
    End Sub

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 48
    Points : 59
    Points
    59
    Par défaut
    AU SECOUR ! Pourquoi vous vous torturez le cerveau ?

    ABRACADABRA !!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      Application.DisplayFullScreen = True
        Application.WindowState = xlNormal
    C'est automatique sur toute les machines.

  8. #8
    Membre expérimenté Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Points : 1 512
    Points
    1 512
    Par défaut
    bonjour neninio31 aalex_38 fgiambelluco CRACOS38 l'ami jacques_jean j ai pas croise depuis un bon moment a qui je fais de gros bisous

    une autre methode bien plus lourde que la methode a jean en piéce jointe pas facile non plus a comprendre enfin bon!!!

  9. #9
    Invité
    Invité(e)
    Par défaut
    Bonsoir CRACOS38,

    AU SECOURS ! Pourquoi vous vous torturez le cerveau ?

    ABRACADABRA !!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Application.DisplayFullScreen = True
        Application.WindowState = xlNormal
    C'est automatique sur toutes les machines.
    C'est vrai !

    Sont-ils bêtes ces gens qui perdent leur temps à mettre au point des tas de lignes de code et même des tutoriels pour aider les autres alors que c'est tellement simple.

    Par exemple : les contrôles suivent ?

  10. #10
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 121
    Points : 127
    Points
    127
    Par défaut
    Bonsoir jacques_jean

    Citation Envoyé par jacques_jean Voir le message
    Bonsoir CRACOS38,

    C'est vrai !

    Sont-ils bêtes ces gens qui perdent leur temps à mettre au point des tas de lignes de code et même des tutoriaux pour aider les autres alors que c'est tellement simple.

    Par exemple : les contrôles suivent ?
    Je n'ai pas compris la ligne en gras, peux-tu expliquer s'il te plait?

    pour les 3 lignes au-dessus je suis d'accord avec toi ( au 2ème degré )

  11. #11
    Invité
    Invité(e)
    Par défaut
    Bonjour La Zélie,

    Et bien le principe, quand tout fonctionne bien (on ne sait jamais !) est que le formulaire est redimensionné, mais aussi, dans la même proportion, la taille de tous les contrôles présents.

    Bon week-end.

    Au passage, bonjour et bon week-end également Laetitia.

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 74
    Points : 49
    Points
    49
    Par défaut
    pourquoi ne pas mettre tout simplement cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        Range("A2:K2").Select
        ActiveWindow.Zoom = True
    en fait tu dis à l'écran de s'adapter à ta zone (ici A2:K2)

  13. #13
    Membre expérimenté Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Points : 1 512
    Points
    1 512
    Par défaut
    bonjour mickisa le fil le forum l'exemple c'est pour un userform!!!

Discussions similaires

  1. Adapter fenetre avec ces composants selon l'ecran
    Par jeremhu dans le forum C++Builder
    Réponses: 3
    Dernier message: 18/04/2013, 09h55
  2. Fade In au depart de chaque ecran
    Par topolino dans le forum Silverlight
    Réponses: 3
    Dernier message: 09/04/2009, 09h27
  3. Juste pour savoir ( ouvrir fenetre en plein ecran )
    Par Alexlesilex dans le forum Balisage (X)HTML et validation W3C
    Réponses: 14
    Dernier message: 07/06/2006, 17h38
  4. Ouverture nouvelle fenetre en plein ecran
    Par hedgehog dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 30/05/2005, 14h53
  5. [Tkinter] Démarrer une fenetre en plein écran
    Par Kyti dans le forum Tkinter
    Réponses: 1
    Dernier message: 20/04/2005, 18h42

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