[lISTBOX] Affichage suite à une recherche mais colonnes manquantes

JONEY76

XLDnaute Occasionnel
Bonjour à tous,

Voici le problème que je rencontre:

J'ai un userform sur lequel il y a juste 1 textbox, 1 bouton et une listbox

La recherche se fait sans problème mais l'affichage dans la listbox s'arrête à 10 colonnes, sauf que je devrait en avoir 38

Je pense que "dcol" pose un soucis....mais là je coince ..

Merci d'avance !!
 

Pièces jointes

  • nombre de colonne dans listbox.xlsm
    19 KB · Affichages: 65

Papou-net

XLDnaute Barbatruc
Re : [lISTBOX] Affichage suite à une recherche mais colonnes manquantes

Bonsoir JONEY76,

Il semblerait que le nombre de colonnes d'une ListBox (ColumnCount) soit limité à 10, selon l'aide Excel du moins.

Je ne sais pas s'il est possible d'augmenter cette limitation par programmation, mais j'ai bien peur que non. D'autant que cela reviendrait à afficher la feuille de calcul (en moins pratique tout de même).

Espérant avoir été utile.

Cordialement.
 

JONEY76

XLDnaute Occasionnel
Re : [lISTBOX] Affichage suite à une recherche mais colonnes manquantes

Bonsoir,

On peut afficher les 38 colonnes avec du code...je viens de tester un code, il affiche les 38 colonnes mais plus la recherche..
Je tourne autour....

ListBox1.List = Range("a2", Cells(Rows.Count, "al").End(xlUp)).Value


Avec la ligne ci dessus on a 38 colonnes mais pas la recherche, je n'arrive pas à l'adapter
 

ChTi160

XLDnaute Barbatruc
Re : [lISTBOX] Affichage suite à une recherche mais colonnes manquantes

Bonsoir ,

voici la procédure que j'ai mis dans le bouton "Chercher"
Code:
Option Base 1
Private Sub CommandButton1_Click()
Dim T() As Variant
On Error Resume Next
'effacer la recherche précédente
UserForm1.ListBox1.Clear
x = 1
'si le textbox est vide alors on sort
If TextBox1 = "" Then Exit Sub

'Avec la recherche sur la feuille :
   With Sheets("feuil1")
           Set C = .UsedRange.Find(TextBox1, LookIn:=xlValues)
        If Not C Is Nothing Then
               firstAddress = C.Address
                dcol = .Cells(C.Row, 256).End(xlToLeft).Column
                
            Do
                With UserForm1.ListBox1
                                 .ColumnCount = dcol
                              
                   ReDim Preserve T(dcol, x)
                             For i = 1 To dcol
                                 T(i, x) = Sheets("feuil1").Cells(C.Row, i)
                             
                             Next i
                End With
                Set C = .UsedRange.FindNext(C)
                 x = x + 1
            Loop While Not C Is Nothing And C.Address <> firstAddress
        End If
    End With
    UserForm1.ListBox1.List = Application.Transpose(T)
End Sub

peut surement être amélioré

Bonne fin de Soirée
Jean Marie
 

JONEY76

XLDnaute Occasionnel
Re : [lISTBOX] Affichage suite à une recherche mais colonnes manquantes

Merci beaucoup !!

J'ai fait un essai, cela fonctionne
J'ai remarqué une chose, si le mot concerne 1 ligne, il les mets à la ligne comme une colonne
c'est le transpose ??? non?
 

ChTi160

XLDnaute Barbatruc
Re : [lISTBOX] Affichage suite à une recherche mais colonnes manquantes

Bonsoir le Fil

Effectivement
Dans le fichier sur lequel j'ai travaillé j'ai mis en bas de procédure
en lieu et place de
Code:
UserForm1.ListBox1.List = Application.Transpose(T)
ceci
Code:
With UserForm1.ListBox1
        Select Case x
            Case 2
                .Column = T()
            Case Else
                .List = Application.Transpose(T)
        End Select
  End With
Bonne fin de Soirée
Amicalement
Jean Marie
 

Discussions similaires

Réponses
18
Affichages
579

Statistiques des forums

Discussions
312 024
Messages
2 084 724
Membres
102 642
dernier inscrit
isa_mat