Redimension de colonne vba

mamamamat Messages postés 4 Date d'inscription jeudi 27 mai 2004 Statut Membre Dernière intervention 28 mai 2004 - 27 mai 2004 à 17:42
mamamamat Messages postés 4 Date d'inscription jeudi 27 mai 2004 Statut Membre Dernière intervention 28 mai 2004 - 28 mai 2004 à 09:31
bonour,
j'aurais voulu savoir comment on peut redimensionner automatiquement une colonne d'une liste en fonction de la taille du texte qui se trouve a l'interieur de celle ci

5 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
27 mai 2004 à 17:48
Salut mamamamat
J'ai résolu ce problème comme ça :
- Tu insères toutes tes valeurs dans ta colonne, normalement
- Tu fais une boucle pour déterminer la largeur optimale :
Dim LargeurMax As Long, r As Long, t As Long
LargeurMax = 0
For r = 0 To List.ListCount - 1
t = Me.TextWidth(List(r))
If t > LargeurMax Then LargeurMax = t
Next r
List.ColumnHeader(1).Width = t + 50

Le 50 est là pour palier au problème de la barre de défilement verticale qui peut empiéter sur la colonne
Ce code est de mémoire : Adapte le

Vala
Jack
0
mamamamat Messages postés 4 Date d'inscription jeudi 27 mai 2004 Statut Membre Dernière intervention 28 mai 2004
27 mai 2004 à 17:54
arrffff il me met une erreur a textwidth ca na pas l'air detre une methode qu'il connait !!!
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
27 mai 2004 à 18:09
re
Par pitié, ne m'envoie pas de message perso, stp.
C'est que tu ne dois pas être dans une forme ...
Si tu es dans un module, remplace Me par le nom d'une forme

Vala
Jack
0
mamamamat Messages postés 4 Date d'inscription jeudi 27 mai 2004 Statut Membre Dernière intervention 28 mai 2004
28 mai 2004 à 09:09
si je suis dans un form mais quand je tape ME il ne me propose pas textwidth
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mamamamat Messages postés 4 Date d'inscription jeudi 27 mai 2004 Statut Membre Dernière intervention 28 mai 2004
28 mai 2004 à 09:31
il me met un message d'erreur :
la procedure proprety let n'est pas definie et la procedure proprety get na pas renvoyé d'objet

voici mon code :

For Each p In Forms!F_Clients_hospitaliers.Ong_cltHospi.Pages
If p.HelpContextId = 1 Then
Call EnvoiCaractPag(Forms!F_Clients_hospitaliers, Forms!F_Clients_hospitaliers.Controls("liste" & p.PageIndex), Forms!F_Clients_hospitaliers.Controls("defliste" & p.PageIndex))
Dim LargeurMax As Long, r As Long, t As Long
LargeurMax = 0
For r = 0 To Controls("liste" & p.PageIndex).ListCount - 1
t = Controls("liste" & p.PageIndex).TextWidth(Controls("liste" & p.PageIndex)(r))
If t > LargeurMax Then LargeurMax = t
Next r
Controls("liste" & p.PageIndex).ColumnHeader(1).Width = t + 50
End If
Next
0
Rejoignez-nous