Listbox erreur d'execution 380 ... Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
R
Rag02700
Membre fidèle
Membre fidèle
Messages : 395
Appréciations reçues : 10
Inscrit le : 26 décembre 2017
Version d'Excel : 2010

Message par Rag02700 » 17 mai 2019, 14:17

Hello,

Je possède un tableau de 10 colonnes. Je veux que si je tape un nom dans TEXBOX1, ma Listbox génère toutes les lignes de ce nom.

Cela fonctionne bien mais si mon tableau fait + de 10 colonnes cela genère une erreur ::D ::D

Est-ce qu'il y a une limitation de 10 colonnes ou mon code qui ne vas pas ? :)

Merci à vous.
TEST_LISBOX.xlsm
(21.12 Kio) Téléchargé 6 fois
A
AlgoPlus
Membre dévoué
Membre dévoué
Messages : 742
Appréciations reçues : 61
Inscrit le : 27 février 2019
Version d'Excel : 2007

Message par AlgoPlus » 17 mai 2019, 14:28

Bonjour,

Si on alimente une listbox par additem on est effectivement limité à 10 colonnes.

Pour avoir plus de 10 colonnes il faut utiliser un tableau (array) contenant les données, puis "charger" la listbox avec ce tableau

Par exemple:
T=Range("A2:Z25")
ListBox1.List = T
A+
R
Rag02700
Membre fidèle
Membre fidèle
Messages : 395
Appréciations reçues : 10
Inscrit le : 26 décembre 2017
Version d'Excel : 2010

Message par Rag02700 » 17 mai 2019, 15:11

Merci je vais tester ça :wink:

Maintenant j'ai une autre question, Si j'ai 40 colonnes mais je veux en afficher 15 qui ne sont pas les unes à la suite des autres...

Est ce qu'on peut faire ?

Merci.
A
AlgoPlus
Membre dévoué
Membre dévoué
Messages : 742
Appréciations reçues : 61
Inscrit le : 27 février 2019
Version d'Excel : 2007

Message par AlgoPlus » 17 mai 2019, 15:39

Créer un tableau dans l'ordre des colonnes voulues.

Par exemple:
dim TableauFinal(),T
T=range("A2:AX350")
redim TableauFinal(ubound(T,1), 1 to15)
for i =  lbound(T,1) to ubound(T,1)
   TableauFinal(i, 1) = T(i , 1)
   TableauFinal(i, 2) = T(i , 5)
   TableauFinal(i, 3) = T(i , 18)
    .../...
   TableauFinal(i, 15) = T(i , 2)
next
ListBox1.List =TableauFinal
A+
R
Rag02700
Membre fidèle
Membre fidèle
Messages : 395
Appréciations reçues : 10
Inscrit le : 26 décembre 2017
Version d'Excel : 2010

Message par Rag02700 » 17 mai 2019, 15:48

Au top merci à toi :wink:
A
AlgoPlus
Membre dévoué
Membre dévoué
Messages : 742
Appréciations reçues : 61
Inscrit le : 27 février 2019
Version d'Excel : 2007

Message par AlgoPlus » 17 mai 2019, 15:53

Plutôt redimensionner le tableau comme ceci:
Redim TableauFinal(1 to Ubound(T,1) , 1 to 15)
B
Boisgontierjacques
Membre fidèle
Membre fidèle
Messages : 434
Appréciations reçues : 96
Inscrit le : 5 octobre 2018
Version d'Excel : 2016

Message par Boisgontierjacques » 18 mai 2019, 09:22

Bonjour,

Exemple avec 15 colonnes discontinues.
Private Sub UserForm_Initialize()
  Set f = Sheets("bd")
  TblBD = f.Range("A2:Z" & f.[A65000].End(xlUp).Row).Value
  Dim TblRes: ReDim TblRes(1 To UBound(TblBD), 1 To 15)
  col = 0
  For Each k In Array(1, 2, 4, 7, 8, 9, 10, 11, 12, 20, 21, 22, 23, 24, 25) ' colonnes à récupérer
    col = col + 1
    For i = 1 To UBound(TblBD): TblRes(i, col) = TblBD(i, k): Next i
  Next k
  Me.ListBox1.List = TblRes
End Sub
Pour un ListBox avec condition
Private Sub ComboBox1_click()
  Dim Tbl(): j = 0
  For i = 1 To UBound(BD)
    If BD(i, 1) = Me.ComboBox1 Then
      j = j + 1: ReDim Preserve Tbl(1 To Ncol, 1 To j)
      c = 0
      For Each k In ColVisu
        c = c + 1: Tbl(c, j) = BD(i, k)
      Next k
    End If
  Next i
  Me.ListBox1.Column = Tbl
Boisgontier
Copie de FormCascadeListBoxColonneNonContigueCond.xls
(101.5 Kio) Téléchargé 3 fois
Copie de ListBoxMultiColonnesDisc.xls
(74 Kio) Téléchargé 2 fois
R
Rag02700
Membre fidèle
Membre fidèle
Messages : 395
Appréciations reçues : 10
Inscrit le : 26 décembre 2017
Version d'Excel : 2010

Message par Rag02700 » 20 mai 2019, 12:31

Hello Jacques,

Aurais-tu stp une version commentée de tes codes ?

J'aimerai bien reprendre tes codes mais si j'ai un souci par la suite je ne serai pas capable d'y mettre le nez dedans ... Il y a trop de lettre pour moi :lole: :lole:

Merci à toi.
B
Boisgontierjacques
Membre fidèle
Membre fidèle
Messages : 434
Appréciations reçues : 96
Inscrit le : 5 octobre 2018
Version d'Excel : 2016

Message par Boisgontierjacques » 20 mai 2019, 15:14

Bonjour,

Il faut adapter les lignes en rouge.

Boisgontier
FormCascadeListBoxTextBoxColonneNonContigueCond.xls
(77 Kio) Téléchargé 6 fois
R
Rag02700
Membre fidèle
Membre fidèle
Messages : 395
Appréciations reçues : 10
Inscrit le : 26 décembre 2017
Version d'Excel : 2010

Message par Rag02700 » 20 mai 2019, 15:45

Merci Jacques.

Ton fichier fonctionne bien mais ce que je souhaite c'est une version commentée pour comprendre ce que tu fais car là je n'y comprends pas grande chose ...

Recopier bêtement un code d'une autre personne sans le comprendre c'est pas mon truc ...

Merci à toi.
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message