Aligner Colonnes ListBox avec Textbox[RESOLU]

cathodique

XLDnaute Accro
Bonsoir:),

J'utilise un code pour afficher un formulaire en plein écran. Je voudrais ajuster l'alignement des colonnes d'une ListBox avec des textboxs correspondantes placées au-dessus de celle-ci.

Lorsque j'utilise la propriété ColumnWidths, c-à-d en entrant des valeurs; les colonnes sont décalées suivants les dimensions de l'écran. Or, c'est très gênants visuellement. En ajustant par code, je pense que ça résoudra le problème.

Merci pour votre aide.
 

Fichiers joints

Robert

XLDnaute Barbatruc
Bonsoir Cathodique, bonsoir le forum,

Je remplacerais les textboxes par une petite Listbox2 aux propriétés identiques à celle de ta ListBox1. Quand tu sélectionnes un élément de la ListBox1, tu renvoies les données de cet élément vers la ListBox2. Tu n'auras pas les séparations mais tu sera parfaitement aligné.
 

cathodique

XLDnaute Accro
Bonjour Robert;),

Mon formulaire est beaucoup plus fourni en contrôles. Dans le fichier joint, j'ai simplifié ce dernier. J'ai laissé juste ce qu'il faut pour illustrer mon problème. Les textboxs en question me servent à modifier la ligne sélectionnée dans la Listbox. Je ne peux donc pas adopter ta proposition.

Je te remercie.

Bonne journée.
 

ChTi160

XLDnaute Barbatruc
Bonjour Cath
Bonjour le fil , le Forum
une approche (redimensionnement , alignement des Controls)
Edit : Tu peux modifier la couleur de fond et de texte des TextBox entêtes (Fond comme le Userform et le texte en Blanc)
Fichier changé.
jean marie
 

Fichiers joints

Dernière édition:

cathodique

XLDnaute Accro
Bonjour Cath
Bonjour le fil , le Forum
une approche (redimensionnement , alignement des Controls)
Edit : Tu peux modifier la couleur de fond et de texte des TextBox entêtes (Fond comme le Userform et le texte en Blanc)
Fichier changé.
jean marie
Bonjour Jean Marie;),
Ce n'est pas du tout aligné ci-joint image
Capture.JPG
Merci pour l'essai.
Bonne journée.:)
 

ChTi160

XLDnaute Barbatruc
Re
Effectivement !
je me suis contente d'aligner avec les TextBox (pas compris Lol)
excuses !
jean marie
 

cathodique

XLDnaute Accro
Désolé Boisgontier :oops:, je n'avais pas rafraichi la page.
Justement, j'étais sur ton site et j'ai trouvé des exemples pour mettre en place des labels ajustés aux colonnes d'une listbox.
Par contre moi, je voudrais faire l'inverse, soit ajuster les colonnes par rapport aux textboxs.
Mais là, je ne sais pas comment m'y prendre.

Merci pour ton orientation. je vais essayer de m'y retrouver.

Bonne journée.;)
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Ce code à la fin de la UserForm_Activate a l'air pas mal :
VB:
   Dim TBx As MSForms.TextBox, I&, TCW$(0 To 7)
   For I = 0 To 7
      Set TBx = Me("TextBox" & Choose(I + 1, 2, 1, 5, 9, 8, 6, 7, 12))
      TCW(I) = TBx.Width & "pt"
      Next I
   Me.ListBox1.ColumnWidths = Join(TCW, ";")
 

cathodique

XLDnaute Accro
Re
Une approche qui se base sur la Mise en forme des Controls d’entêtes du Userform.
nommés pour cela "Lbl_1" à "Lbl_8"
jean marie
Désolé @ChTi160 :oops:, un peu dépassé pour répondre à vos propositions.
En effet, ta solution est bonne. Je vais essayer de passer sur mon classeur de travail pour adapter et reviendrai aux nouvelles.

Tous mes remerciements à toi, @BOISGONTIER, @Dranreb et à tous ceux et celles qui auraient consulté cette discussion.

Bonne journée à vous.;)
 

cathodique

XLDnaute Accro
Bonjour.
Ce code à la fin de la UserForm_Activate a l'air pas mal :
VB:
   Dim TBx As MSForms.TextBox, I&, TCW$(0 To 7)
   For I = 0 To 7
      Set TBx = Me("TextBox" & Choose(I + 1, 2, 1, 5, 9, 8, 6, 7, 12))
      TCW(I) = TBx.Width & "pt"
      Next I
   Me.ListBox1.ColumnWidths = Join(TCW, ";")
Merci beaucoup pour ta proposition, elle donne le même résultat que celle de @ChTi160 au post#8.
Bonne journée.
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas