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 via un formulaire


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 14
    Points : 8
    Points
    8
    Par défaut Recherche via un formulaire
    Bonjour a tous !

    J'ai posté la semaine dernière pour un problème qui maintenant est résolu !
    Alors merci encore a vous

    Mais maintenant j'ai un autre problème

    J'ai mon formulaire :



    Et ma base de donnée :



    Le but étant qu'en tapant le numéro de série et en cliquant sur le bouton Search, les infos correspondantes à ce N° de série(sur la même ligne) s'affichent dans les Combobox correspondantes.
    Et, si plusieurs infos sont possibles, qu'elles s'ajoutent aux listes des combobox.

    Mais je ne vois pas par ou passer.

    Mon idée :

    à la réaction au clique sur mon bouton1 (search) :

    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
     
    If le combobox "N° de série" n'est pas vide Then
        passage en revue de la colonne "nom" et ajout dans la liste des infos
        If info trouvé Then
            Ajout dans la liste de la combobox
        Else affiche un message type "Inconnu" ou encore "Introuvable"
            passage en revue de la colonne "prénom" et ajout dans la liste des infos
        If info trouvé Then
            Ajout dans la liste de la combobox
        Else .....
        End If
        End If
    End If
     
    ainsi de suite...
    Mais je ne sais pas comment coder ça appart la partie "Else" he oui chui débutant !

    Alors voila, un coup de main serait cool pasque je suis vrement bloqué..

    Merci d'avance ! Bye

  2. #2
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 14
    Points : 8
    Points
    8
    Par défaut
    Bon en farfouillant, j'ai codé ça, mais sa ne fonctionne pas, quelqu'un saurait ou est l'erreur ?

    Biensur pour l'instant sa ne concerne que le nom.

    En renseignant le numero de série dans la combobox7 on est censé retrouvé tous les noms correspondants(D2: D65536) dans la liste de la combobox2.

    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
     
    Private Sub CommandButton1_Click()                            'Réaction au clique sur le bouton "Recherche" :
     
    Cells(2, 11).Select
     
    If ComboBox7.Value <> "" Then
        ActiveCell.Offset(0, -7).Activate
                    Me.ComboBox2 = ActiveCell.Value
                        If Me.ComboBox2.ListIndex = -1 Then
                            Me.ComboBox2.AddItem ActiveCell.Value
                            Me.ComboBox2 = ""
                        End If
        Else: Set ComboBox2.Value = "Donnée introuvable"
    End If
     
    End Sub

  3. #3
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 14
    Points : 8
    Points
    8
    Par défaut
    Personne ? je seche, un coup de main serait le bienvenu.

    Voila ou en est mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Do While Cells(x, 11) <> ""
        If ComboBox7.Value <> "" Then
            ActiveCell.Offset(0, -7).Activate
            Me.ComboBox2 = ActiveCell.Value
                If Me.ComboBox2.ListIndex = -1 Then
                    Me.ComboBox2.AddItem ActiveCell.Value
                Else
                    ComboBox2.Value = UCase(Introuvable)
                    ActiveCell.Offset(0, 7).Activate
                End If
        End If
        x = x + 1
        ActiveCell.Offset(1, 0).Activate
     Loop

  4. #4
    Membre à l'essai
    Inscrit en
    Juillet 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 15
    Points : 12
    Points
    12
    Par défaut
    Tu pourrais détailler clairement les étapes du fonctionnement de ton userform ?

  5. #5
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 14
    Points : 8
    Points
    8
    Par défaut
    C'est un formulaire de type annuaire. En gros, quand on rempli les combobox, et qu'on appuye sur le bouton save, lres infos s'enregistre sur une feuille, dans un classeur par colonne,(nom, prenom, agence, tel, num de série....etc etc)

    Mais je voudrai un bouton "Rechercher" qui, par exemple : si je tape un numéro de série (donc dans la combobox11) et que je clique sur le bouton "Rechercher" alors les autres combobox se remplissent avec les infos correspondante et, si ils y a plusieurs possiblité pour un meme numéro de série, il faudrai que la liste des combobox respectives se remplissent.

    Pour info :

    ComboBox0 = Colonne A(1) > Nom de l'inspecteur
    ComboBox2 = Colonne D(4) > Nom de l'utilisateur
    ComboBox3 = Colonne E(5) > Prénom
    ComboBox4 = Colonne F(6) > Agence
    ComboBox5 = Colonne G(7) > Telephone
    ComboBox7 = Colonne K(11) > N° de série
    ComboBox8 = Colonne L(12) > Code Pane
    ComboBox9 = Colonne M(13) > Problème encontré
    ComboBox10 = Colonne N(14) > Solution proposée
    ComboBox11 = Colonne H(8) > Groupe de produit
    ComboBox12 = Colonne I(9) > Modèle de produit
    ComboBox13 = Colonne J(10) > Type du produit

    TextBox1 = Numéro du dossier (Vérouillé à l'écriture et à la Tabulation)
    TextBox4 = Colonne O(15) > Nombre d'heure du véhicule

    CheckBox1 = Colonne P(16) > Affaire Résolue/Non résolue

    avec aussi :

    DateLabel = Colonne B(2)
    HeureLabel = Colonne C(3)

Discussions similaires

  1. Réponses: 33
    Dernier message: 22/08/2011, 14h33
  2. [XL-2007] Mise à jour d'une base données via recherche avancée et formulaire en excel VBA
    Par nazz4 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 21/02/2011, 00h11
  3. Réponses: 2
    Dernier message: 02/07/2010, 18h16
  4. Recherche d'enregistrement via un formulaire
    Par pat04 dans le forum Access
    Réponses: 4
    Dernier message: 24/08/2006, 13h31
  5. Recherche dans une table via un formulaire
    Par Z[ee]k dans le forum Access
    Réponses: 3
    Dernier message: 05/06/2006, 11h14

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