Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Colonnes de listbox

José77

XLDnaute Occasionnel
Bonjour,

Quelqu’un connaîtrait il la manière de récupérer en VBA la valeur de la largeur des colonnes d’une listbox ?
Par avance merci beaucoup.
José
 

Dranreb

XLDnaute Barbatruc
Vous pouvez utiliser Split(Replace(Me.ListBox1.ColumsWidths," pt",""), "; ") pour les avoir dans des éléments séparés. Remarque la propriété doit avoir été initialisée. Sinon je pense que c'est pour toutes les colonnes Me.ListBox1.Width / 3
 

José77

XLDnaute Occasionnel
Merci beaucoup à vous tous qui avez répondu mais je suis encore un peu perdu.
En fait je voudrais seulement connaître la valeur de la largeur de la colonne 3 d’une listbox.
Que vba me dise LARG =125
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re,

Un exemple dans le classeur joint avec une fonction dans le module de Userform1 qui renvoie la largeur de la nCol ième colonne de la listbox cListBox.
Exemple d'appel : largeur = LargeurColonneN(ListBox1,3)

VB:
Function LargeurColonneN(cListBox As Control, nCol As Long)
Dim Largeur As Double, S As String, t
   If TypeName(cListBox) <> "ListBox" Then LargeurColonneN = -1: Exit Function
   If nCol > cListBox.ColumnCount Then LargeurColonneN = -1: Exit Function
   S = cListBox.ColumnWidths
   If S = "" Then
      Largeur = cListBox.Width / cListBox.ColumnCount
      If Largeur < 72 Then Largeur = 72
   Else
   S = Replace(S, "pt", "")
      Largeur = CDbl("0" & Split(S, ";")(nCol - 1))
   End If
   LargeurColonneN = Largeur
End Function
 

Pièces jointes

  • José77- listbox - largeur colonne- v1.xlsm
    22.7 KB · Affichages: 7
Dernière édition:

job75

XLDnaute Barbatruc
La largeur minimale d'une colonne quand on n'a pas défini explicitement les largeurs est 72 pts.
C'est ce que dit Microsoft mais ça ne semble pas vrai chez moi.

Comparez 2 ListBox, l'une sans définition des largeurs et l'autre avec des largeurs à 72.

En plus chez moi ce n'est pas la même chose dans une feuille de calcul et dans un UserForm.
 

Discussions similaires

Réponses
16
Affichages
630
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…