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 en VBA dans une base de donnée excel


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 38
    Points : 22
    Points
    22
    Par défaut recherche en VBA dans une base de donnée excel
    bonjour,
    je voudrait savoir si quelqu'un connait le moyen de faire une recherche en vba dans une userform afin que celle ci recherche des données que j'aurais sélectionnées précédemment.
    je m'explique , je suis entrain de faire un formulaire (userform) dans lequel je choisis une destination (contexte réservation de voyage ) dans une liste déroulante.et je voudrais réaliser une autre liste déroulante avec le résultat de la recherche : cette recherche doit aller dans la base de donnée et sélectionner toute les dates qui correspondent a la destination.
    en espérant que vous ayez compris.
    Merci.

  2. #2
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Bonjour,
    il faudrait savoir comment ta base de donnée est organisée

    Je ferai un essai et avec mes petits moyens, te proposerai

    a +
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 38
    Points : 22
    Points
    22
    Par défaut
    merci d'avoir bien voulut repondre
    ce que je peut vous dire c'est que ma base de donne s'appelle "voyage" elle se compose de 2 colonne
    ma feuille sur laquelle se trouve ma base de donne s'appelle aussi "voyage"
    ma barre de defilement ou se trouve les destination s'appelle "destination"
    et enfint la barre de defilement ou je souhaiterai que mes reponse s'affiche pour pouvoir les choisir s'appel "datecmd"
    en esperant que vous aiyai compris.
    Merci.

  4. #4
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    enfin,

    ci-joint un exemple, j'espère que ça ira
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  5. #5
    Membre expérimenté Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Points : 1 665
    Points
    1 665
    Par défaut
    et qu'est-ce qui ne va pas?
    Alleï Bonjour chez vous!

  6. #6
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 38
    Points : 22
    Points
    22
    Par défaut
    encore merci pour ton aide
    coment je fait quand la listebox 1 est une liste deroulante et que je veut que liste box est un eliste deroulante aussi.

  7. #7
    Membre expérimenté Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Points : 1 665
    Points
    1 665
    Par défaut
    ton soucis, c'est des menus déroulant à la place des list box alors?

    ben c'est pareil excepté que tu ira dans l'événement change

    louque

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    Option Explicit
     
    Private Sub ComboBox1_Change()
    Dim str As String, cel As Range
    ComboBox2.Clear
        str = ComboBox1.Value
        With Worksheets("feuil2")
        For Each cel In .Range("a2:b" & .Range("a" & Rows.Count).End(xlUp).Row)
            If cel = str Then
                With ComboBox2
                  .AddItem cel(1, 2)
                End With
            End If
        Next cel
        End With
    End Sub
     
    Private Sub ListBox1_Click()
    Dim str As String, cel As Range
    ListBox2.Clear
        str = ListBox1.Value
        With Worksheets("feuil2")
        For Each cel In .Range("a2:b" & .Range("a" & Rows.Count).End(xlUp).Row)
            If cel = str Then
                With ListBox2
                  .AddItem cel(1, 2)
                End With
            End If
        Next cel
        End With
     
    End Sub
     
    Private Sub ListBox2_Click()
     
    End Sub
     
    Private Sub UserForm_Initialize()
    Dim voyage As String, quand As String
    Dim y As Integer
     
    Sheets("feuil1").Activate
    y = Sheets("feuil1").Range("a2").End(xlDown).Offset(0, 0).Row
    ListBox1.RowSource = "a2: a" & y
    ComboBox1.RowSource = "a2:a" & y
     
    End Sub
    Alleï Bonjour chez vous!

  8. #8
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 38
    Points : 22
    Points
    22
    Par défaut encore moi
    je suis d'accord avec cette facon de faire mais sa ne veut pas marcher j'ai decider de t'envoyer tout mon ptograme tu le trouvera sous le userform client

  9. #9
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 38
    Points : 22
    Points
    22
    Par défaut exuse
    voisi ma version
    en esperant que sa t'aide a me comprendre
    Fichiers attachés Fichiers attachés

  10. #10
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Je viens de regarder 2 secondes ton fichier et je ne vois pas l'intérêt d'un combobox, as-tu l'intention de changer les données à l'intérieur de celui-ci ? sinon une listbox suffit

    au fait, d'après tes feuilles la plage commence à a3, a2 représentant les entetes
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  11. #11
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 38
    Points : 22
    Points
    22
    Par défaut
    donc tu me propose quoi une liste déroulante pour les destination et une liste box pour les dates? si c sa le code sa serait koi?
    je te remerci du temps que tu consacre a m'aider.

  12. #12
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    une listbox pour les deux mais il faudrait que je regarde mmieux car apparemment tu n'as qu'une date par pays donc la solution devrait etre plus simple
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  13. #13
    Membre expérimenté Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Points : 1 665
    Points
    1 665
    Par défaut
    voici les corrections

    tu faisait référence à listbox1 -> je l'ai supprimé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub UserForm_Initialize()
    Dim voyage As String, quand As String
    Dim y As Integer
     
    Sheets("bd").Activate
    y = Sheets("bd").Range("a3").End(xlDown).Offset(0, 0).Row
    destination.RowSource = "a3:a" & y
     
    End Sub
    tu essayais d'ajouter sur destination et non sur datecmd
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Private Sub destination_Change()
    Dim str As String, cel As Range
    datecmd.Clear
        str = destination.Value
        With Worksheets("voyage")
        For Each cel In .Range("a2:b" & .Range("a" & Rows.Count).End(xlUp).Row)
            If cel = str Then
                With datecmd
                  .AddItem cel(1, 2)
                End With
            End If
        Next cel
        End With
    End Sub
    Alleï Bonjour chez vous!

  14. #14
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 38
    Points : 22
    Points
    22
    Par défaut
    je vous remerci encore pour votre aide sa marche corectement.
    merci

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

Discussions similaires

  1. Recherche d'individus dans une base de données
    Par idirbxl dans le forum Débutez
    Réponses: 7
    Dernier message: 28/09/2012, 15h03
  2. Réponses: 0
    Dernier message: 13/09/2010, 03h58
  3. Rechercher des informations dans une base de donnée en excel
    Par simonasjdp dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 13/07/2009, 19h10
  4. recherche de mots dans une base de données
    Par arakna dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 08/04/2009, 15h27
  5. Recherche efficace dans une base de donnée excel
    Par endersox dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 02/06/2008, 06h36

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