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 :

Largeur des colonnes dans une ListBox [XL-2013]


Sujet :

Macros et VBA Excel

  1. #1
    Membre habitué Avatar de RastaBomboclat
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Novembre 2014
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 240
    Points : 164
    Points
    164
    Par défaut Largeur des colonnes dans une ListBox
    Bonjour la communauté.

    J’utilise un code bien fait et qui fonctionne super bien dans mon application. J’ai reçu ce code (qui un petit fichier Excel) de Thautheme (encore un merci pour ce code).
    Aujourd’hui il se pose un problème, non pas au niveau du code mais de la présentation des informations renvoyer par le code. En effet, les colonnes ont tous la même taille et je désir à présent agrandir la largeur d’une ou deux colonnes pour pouvoir bien lire les données qui s’y trouve.

    Par exemple, dans une colonne de numéro de facture, il peut y avoir plusieurs factures du type :
    FF-2016-2000123
    FF-2016-2000124
    FF-2016-2000125
    Le problème est que la colonne n’affiche qu’une partie du numéro de facture (FF-2016-200), et le reste des 4 autres digit (0123ou 0124 ou encore 0125) ne se voient pas à cause de la largeur de cette colonne. Du coup je ne sais pas faire facilement le choix de la facture désirée.

    C’est le premier message je ne peux pas encore ajouter le fichier pour vous montrer comment il fonctionne. Mais veuillez trouver ICI le lien du message quand on me l’avait donné.

    Merci d’avance pour votre aide.
    Avec les érreurs on apprend - Avec le temps on comprend...
    Rasta Bomboclat

  2. #2
    Membre émérite
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 814
    Points : 2 949
    Points
    2 949
    Billets dans le blog
    10
    Par défaut
    Bonjour,

    A lire : http://silkyroad.developpez.com/VBA/ControlesUserForm/

    Un extrait de code, juste pour ta question :
    [à placer dans la Private Sub UserForm_Initialize()]
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        'Définit le nombre de colonnes dans la ListBox
        ListBox1.ColumnCount = 7
     
        '---
        'Définit la largeur des colonnes d'une ListBox:
        'Par défaut, la largeur des colonnes est de 72 points
        '(72 points = 1 pouce)
        ListBox1.ColumnWidths = "50;80;50;60;50;70;50"
    Cordialement,
    Franck

  3. #3
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    Bonjour j'avais donné a tautheme la bonne methode pour avoir les colonne d'une listbox ou combobox a la bonne dimension si la colonne était rempli avec une plage

    comme ceci par exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub UserForm_Activate()
    Set plage = Range("A1:C9")
    ComboBox1.ColumnCount = 3
    ComboBox1.List = plage.Value
    For i = 1 To plage.Columns.Count
    thewidth = thewidth & Cells(1, i).ColumnWidth * 9 * 0.66 & "pt" & ";"
    Next
    ComboBox1.ColumnWidths = Mid(thewidth, 1, Len(thewidth) - 1)
    End Sub
    Nom : demo2 - Copie.gif
Affichages : 6718
Taille : 412,5 Ko
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  4. #4
    Membre émérite
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 814
    Points : 2 949
    Points
    2 949
    Billets dans le blog
    10
    Par défaut
    Bonjour Patrick,

    la bonne méthode pour avoir les colonnes d'une listbox ou combobox à la bonne dimension
    Oui et non.
    Cela sous-entends, tout de même, que la police soit la même (ou approximativement) dans la plage que dans la ListBox (police, taille, gras, italique, etc).

    Pour faire ce que tu désires, de manière précise, il te faudrait passer par les fonctions trouvables ICI, à appliquer sur toutes les lignes de la colonne pour en estimer la largeur.
    Toutes les lignes car :
    mmmmmm
    est "plus long" que :
    aaaaaaaa
    alors que Len("mmmmmm") est plus petit que Len("aaaaaaaa")...
    Cordialement,
    Franck

  5. #5
    Membre habitué Avatar de RastaBomboclat
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Novembre 2014
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 240
    Points : 164
    Points
    164
    Par défaut
    Bonjour à tout le monde,

    Merci pour toutes vos réponses. Je vais toutes les essayer et celle qui me conviendra le mieux la garderais.
    Désolé de réagir aussi tardivement.

    Merci encore
    Avec les érreurs on apprend - Avec le temps on comprend...
    Rasta Bomboclat

  6. #6
    Membre habitué Avatar de RastaBomboclat
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Novembre 2014
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 240
    Points : 164
    Points
    164
    Par défaut
    Encore Bonjour,

    Je reviens content et joyeux d’avoir trouvé ce que je cherchais.
    Merci encore à vous tous qui avez contribué. Je vais me caler sur la solution de Pijaku où je peux à volonté définir aisément la taille d’une colonne précise.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ListBox1.ColumnWidths = "0;50;70;160"
    Ça marche très bien.

    Bonne journée,
    Avec les érreurs on apprend - Avec le temps on comprend...
    Rasta Bomboclat

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

Discussions similaires

  1. Largeur des colonnes d'une ListBox : le type ne correspond pas
    Par cschauss dans le forum Général VBA
    Réponses: 1
    Dernier message: 03/09/2015, 11h20
  2. Réponses: 9
    Dernier message: 07/10/2010, 17h49
  3. [XL-2003] Problème de décalage des colonnes dans une listbox
    Par -Naek- dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/05/2009, 20h06
  4. Largeur de colonne dans une Listbox
    Par fmris dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 06/02/2009, 11h29
  5. Fixer la largeur des colonnes d'une CListCtrl
    Par Depteam1 dans le forum MFC
    Réponses: 4
    Dernier message: 28/06/2005, 15h46

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