Vous êtes actuellement hors ligne, en attente de reconnexion à Internet.

UserForm est plus court et plus étroit que dans les versions antérieures d'Excel

IMPORTANT : Cet article est issu d'une traduction automatique réalisée par un logiciel Microsoft et non par un traducteur professionnel. Cette traduction automatique a pu aussi être révisée par la communauté Microsoft grâce à la technologie Community Translation Framework (CTF). Pour en savoir plus sur cette technologie, veuillez consulter la page http://support.microsoft.com/gp/machine-translation-corrections/fr. Microsoft vous propose en effet des articles traduits par des professionnels, des articles issus de traductions automatiques et des articles issus de traductions automatiques révisées par la communauté Microsoft, de manière à ce que vous ayez accès à tous les articles de notre Base de connaissances dans votre langue. Il est important de noter que les articles issus de la traduction automatique, y compris ceux révisés par la communauté Microsoft, peuvent contenir des erreurs de vocabulaire, de syntaxe ou de grammaire. Microsoft ne pourra être tenu responsable des imprécisions, erreurs, ainsi que de tout dommage résultant d’une traduction incorrecte du contenu ou de son utilisation par les clients.

La version anglaise de cet article est la suivante: 3156159
Symptômes
Supposons que vous définissez les propriétés de hauteur et la largeur d'un objet UserForm à partir d'un programme, et puis que vous utilisez Microsoft Excel 2016 pour afficher ce formulaire utilisateur. Dans ce cas, vous remarquez que la hauteur et la largeur sont plus courts et plus étroite (respectivement) que dans les versions antérieures d'Excel. La hauteur de l'intérieur et intérieur largeur est également plus court et plus étroite, et il est sur le côté droit et du bas de la fenêtre dans laquelle l'objet UserForm est coupé ou tronqué. Considérant que la disposition du contrôle dans la zone principale de l'objet UserForm est le même que dans les versions antérieures d'Excel. Par conséquent, certaines parties du formulaire ou le contrôle peuvent être tronqués.
Cause
Ce problème se produit en raison d'une différence dans les calculs de taille de bordure entre Excel 2016 et les versions antérieures d'Excel.
Contournement
Pour contourner ce problème, définissez les valeurs de largeur et de hauteur spécifique pour l'objet UserForm en fonction de la version d'Excel que vous utilisez. Cela signifie que la spécification des propriétés de largeur et de hauteur supérieure dans Excel 2016.
Statut
Microsoft a confirmé qu'il s'agissait d'un bogue dans les produits Microsoft répertoriés dans la section « S'applique à ».
Plus d'informations
Pour reproduire ce problème, procédez comme suit.
  1. Ouvrez un nouveau classeur dans une version Excel avant 2016 d'Excel, telles que des Excel 2013.
  2. Sous l'onglet fichier , cliquez sur Enregistrer sous, cliquez sur Parcourir. Cliquez sur Le classeur Excel Macro-Enabled (*.xlsm) dans la zone type , tapez un nom de fichier dans la zone nom de fichier , puis cliquez sur Enregistrer.
  3. Cliquez sur l'onglet développeur . Si l'onglet développeur n'est pas affichée, procédez comme suit :
    1. Sous l'onglet fichier, cliquez sur Options.
    2. Cliquez sur Personnaliser le ruban.
    3. Dans la zone des Onglets principaux , activez la case à cocher développeur .
    4. Cliquez sur OK pour fermer la boîte de dialogue Options Excel .
  4. Dans le groupe de codes pour démarrer Visual Basic Editor, cliquez sur Visual Basic .
  5. Dans le volet Projet - VBAProject , avec le bouton droit pour ouvrir le menu contextuel, cliquez sur Insérer, puis cliquez sur UserForm.
  6. Dans la fenêtre boîte à outils , sélectionnez un contrôle et collez-la près les bordures droite et inférieure de l'objet UserForm.
  7. Cliquez sur l'objet UserForm, puis sélectionnez et faites glisser la marque de coin pour augmenter la taille de l'objet Userform.
  8. Dans le volet Projet - VBAProject , droit UserForm1, puis cliquez sur Afficher le Code.
  9. Procédez comme suit :
    1. Dans la zone objet , cliquez sur UserForm.
    2. Dans la zone procédure , cliquez sur initialiser.
    3. Ajoutez le code de macro suivant à l'événement Initialize :
      UserForm1.Height = 180UserForm1.Width = 240
    4. Dans le volet Projet - VBAProject , avec le bouton droit pour ouvrir le menu contextuel, cliquez sur Insérer, puis cliquez sur Module.
    5. Dans le Module1, tapez le code de macro suivant :

      Public Sub Test()        UserForm1.ShowEnd Sub
  10. Sous l'onglet développeur , cliquez sur Macros dans le groupe de codes .
  11. Cliquez sur la macro Test , puis cliquez sur exécuter. Vous pouvez voir le contrôle qui est collé à l'étape 6 s'affiche correctement. Et la taille de fenêtre à comparer ultérieurement.
  12. Dans le classeur, cliquez sur l'onglet fichier , puis cliquez sur Enregistrer.
  13. Copier ce classeur sur l'ordinateur sur lequel Excel 2016 est installé.
  14. Ouvrir ce classeur.
  15. Sous l'onglet développeur , cliquez sur Macros dans le groupe de codes .
  16. Cliquez sur la macro Test , puis cliquez sur exécuter.
Résultat :

Vous pouvez voir que certaines parties du contrôle qui a été collé à l'étape 6 sont tronqués. En outre, la taille de fenêtre est plus étroite et plus courtes que la taille à l'étape 11.

Propriétés

ID d'article : 3156159 - Dernière mise à jour : 05/09/2016 16:31:00 - Révision : 1.0

Excel 2016

  • kbtshoot kbbug kbexpertiseadvanced kbmt KB3156159 KbMtfr
Commentaires
ript' src='" + (window.location.protocol) + "//c.microsoft.com/ms.js'><\/script>");