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 :

[VBA-E]Dimensions fenêtre


Sujet :

Macros et VBA Excel

  1. #1
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut [VBA-E]Dimensions fenêtre
    Dans Workbook_Open, j'ai ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Public HauteurEcran, LargeurEcran
    Private Sub Workbook_Open()
        Application.WindowState = xlMaximized
        With Application
            HauteurEcran = .UsableHeight
            LargeurEcran = .UsableWidth
        End With
    '....
    End sub
    Dans un form, j'ai ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub UserForm_Initialize()
        With GrilleDeSaisie  'Nom de l'userform
            .Height = HauteurEcran
            .Width = LargeurEcran
        End With
    '...
    End sub
    Or, si la largeur de GrilleDeSaisie correspond bien à la largeur de l'écran, la hauteur, elle, ne suit pas.
    Un erreur d'interprétation ?

    Une explication serait la bienvenue.

    Merci

    NB - Je n'avais encore jamais rencontré de pb avec ce code

  2. #2
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Ne vois rien de faux dans ton code (même si n'ai pas VBA) !
    A moins que VBA ne gère des "étirements" à proportion forcée !
    Et VBA ne sait-il plus faire, comme avant, un simple zoom "pleine page" , ni "plein écran" ?


    2 petites gênes :
    1) pourquoi Public (avec le risque d'une valeur donnée ailleurs) ?
    2) à l'Open, tout n'est pas encore chargé

  3. #3
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 147
    Points
    20 147
    Par défaut
    bonjour Ouskel'n'or , bonojur jmfmarques

    pour afficher ton UserForm e plein ecran tu peux tester

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub userForm_Activate()
    With Me 
    .startUpPosition = 3
    .Width = Application.Width
    .Height = Application.Height
    .Left = 0
    .Top = 0
    End With
    End Sub


    bon week end
    michel

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Hello Silky,
    Marche impeccable.
    Curieux, je crois avoir toujours utilisé UsableHeight ou Width et n'ai pourtant jamais eu ce pb... Je vérifierai.
    En attendant, merci (une fois de plus)

    Pour te répondre, Meussieu jmf, "Public" parce que les lignes de code de lecture des dimensions d'écran étaient à l'origine dans Userform_Initialize() et que, les ayant placés dans workbook_open, je ne voulais pas qu'on puisse penser un seul instant que j'ai eu pu les avoir oubliées

    Merci à tous deux

    A+

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Bonjour!
    Quand Excel calcule la hauteur utilisable, il déduit tout ce qui est barres d'outils, d'état, de formule, de défilement et les onglets de classeur;
    et même en masquant tout ça et en te mettant en plein écran, il reste la barre de menus qui te laisse donc toujours une petite bandelette horripilante...

  6. #6
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Tiens ?
    VBA moderne ne permet plus, comme avant, d'initialiser Excel sans la moindre barre affichée ?
    Eh ? Ousk ?... donnes la réponse....(tu la connais)

  7. #7
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Hello Fred&J,
    Citation Envoyé par Tu
    Quand Excel calcule la hauteur utilisable, il déduit tout ce qui est barres d'outils, d'état, de formule, de défilement et les onglets de classeur;
    et même en masquant tout ça et en te mettant en plein écran, il reste la barre de menus qui te laisse donc toujours une petite bandelette horripilante...
    C'est vrai si tu utilises UsableHeight et width mais avec la syntaxe donnée par SilkyRoad, tu as bien la hauteur et la largeur de l'écran

    Citation Envoyé par Quant à jmf, il
    ou plutôt demandé : VBA moderne ne permet plus, comme avant, d'initialiser Excel sans la moindre barre affichée ?
    Si mais il restera toujours un truc ou deux qui t'empêcheront d'avoir la bonne hauteur. J'ai vérifié, j'utilisais bien Application.Height... Je ne sais pas ce qu'il m'a pris d'aller chercher UsableHeight

    A+

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

Discussions similaires

  1. [Sources][VBA] Transparence de fenêtre
    Par SfJ5Rpw8 dans le forum Contribuez
    Réponses: 4
    Dernier message: 01/01/2013, 18h52
  2. Réponses: 3
    Dernier message: 29/01/2010, 14h28
  3. [VBA] masquer la fenêtre de base de donnée
    Par Antho73 dans le forum VBA Access
    Réponses: 2
    Dernier message: 29/07/2008, 14h03
  4. Réponses: 1
    Dernier message: 19/06/2007, 11h56
  5. [javascript]Dimension fenêtre : Bête mais pénible
    Par sanosuke85 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 06/03/2007, 09h32

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