IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Recherche et création ListBox de plus de 10 colonnes [XL-2013]


Sujet :

Macros et VBA Excel

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Avril 2008
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 25
    Par défaut Recherche et création ListBox de plus de 10 colonnes
    Bonjour à tous,

    Etant débutant en VBA Excel, je développe une petite application de test qui réalise des recherches, insertions et modifications de tableaux en feuille Excel via des formulaires.

    Je rencontre un problème au niveau de la recherche, pour afficher dans une ListBox le résultat de ma recherche.
    En effet, cela fonctionne correctement jusqu'à 10 champs, mais tombe en erreur si je souhaite récupérer + de champs.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    Me.List_Search.Clear
      Set c = Sheets("BDD").Range("a:a").Find(Me.TB_Nom.Value, LookIn:=xlValues)
      If Not c Is Nothing Then
         premier = c.Address
         i = 0
         Do
           Me.List_Search.AddItem
           Me.List_Search.List(i, 0) = c.Value
           Me.List_Search.List(i, 1) = c.Offset(0, 1).Value
           Me.List_Search.List(i, 2) = c.Offset(0, 2).Value
           Me.List_Search.List(i, 3) = c.Offset(0, 4).Value
           Me.List_Search.List(i, 4) = c.Offset(0, 5).Value
           Me.List_Search.List(i, 5) = c.Offset(0, 6).Value
           Me.List_Search.List(i, 6) = c.Offset(0, 7).Value
           Me.List_Search.List(i, 7) = c.Offset(0, 8).Value
           Me.List_Search.List(i, 8) = c.Offset(0, 9).Value
           Me.List_Search.List(i, 9) = c.Offset(0, 10).Value
           Me.List_Search.List(i, 10) = c.Offset(0, 11).Value
           Set c = Sheets("BDD").Range("a:a").FindNext(c)
           i = i + 1
         Loop While Not c Is Nothing And c.Address <> premier
       End If
    De plus, je souhaiterai pouvoir récupérer tous les champs de mon tableau mais n'en afficher que certains dans la listBox.
    Par contre, il me faut bien l'information, car sur un double-click, je voudrai afficher toutes les informations dans un nouveau UserForm.

    Jusqu'à 10 champs, mon code fonctionne jusqu'au bout, mais au-delà plus rien ne marche.

    Après différentes recherches sur Internet/Forums, j'ai l'impression qu'il faudrait renseigner un tableau et ne plus utiliser cette façon de faire: Me.List_Search.List(i, 10) = c.Offset(0, 11).Value
    Mais je ne trouve pas de façon de faire qui réalise à la fois la recherche comme je souhaite, et le remplissage de ma ListBox.

    Je vous mets en pièce jointe mon fichier de test.

    Merci d'avance pour vos réponses, indices ou quoi que ce soit qui me mette sur la bonne voie !
    Fichiers attachés Fichiers attachés

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [DEBUTANT]recherche de date - heure la plus proche
    Par tripper.dim dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 13/06/2007, 13h15
  2. Réponses: 10
    Dernier message: 06/03/2007, 15h36
  3. Script Création de table plus chargement
    Par Poisson59 dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 10/08/2006, 15h14
  4. Comment effectuer une recherche dans une listBox?
    Par Mickey.jet dans le forum Delphi .NET
    Réponses: 2
    Dernier message: 19/05/2006, 17h15
  5. recherche dans une listbox
    Par micknic dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 23/02/2005, 22h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo