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 :

filtrer avec 2 combobox


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Homme Profil pro
    ELECTROTECHNICIEN
    Inscrit en
    Mars 2010
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ELECTROTECHNICIEN
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2010
    Messages : 61
    Par défaut filtrer avec 2 combobox
    Bonjour au Forum,

    J'ai un problème avec une recherche avec deux combobox.

    Pour résumer:
    J'ai une feuille qui contient des données sur des appareils.
    colonneA= Ref ancien
    colonneB= Ref nouveau
    colonneC= Donné 1
    colonneD= Donné 2
    ...Etc

    J'ai créé un userform avec 2 combobox pour faire mes recherches suivant la nouvelle ou l'ancienne ref(car tous mes appareils n'ont pas de nouvelles référence et certain on la même référence).
    Aujourd'hui, j'arrive a faire mes recherche suivant les deux critères et indiquer les données 1-2.etc dans des textbox suivant le résultat.

    Mon problème:
    J'ai des nouvelle référence qui sont identique à l'ancienne, et quand je sélectionne ces références j'ai une erreur d'exécution 1004.

    Le code de mes combobox:

    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
    Private Sub ComboBox3_Change()
     
    Dim cherche1 As String
     
    Sheets("BD").Select
    If Not IsNull(ComboBox3.Value) Then
        cherche1 = ComboBox3.Value
     
        Set cellule = Sheets("BD").Cells.Find(What:=cherche1, LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlNext)
        If Not cellule Is Nothing Then
     
        ComboBox4.Value = cellule.Offset(0, 1).Value
        TextBox9 = cellule.Offset(0, 3).Value
        TextBox10 = cellule.Offset(0, 4).Value
        TextBox11 = cellule.Offset(0, 5).Value
        TextBox12 = cellule.Offset(0, 6).Value
        TextBox13 = cellule.Offset(0, 7).Value
        Else
       End If
    End If
    End Sub
     
    Private Sub ComboBox4_Change()
     
    Dim cherche2 As String
     
    Sheets("BD").Select
    If Not IsNull(ComboBox4.Value) Then
        cherche2 = ComboBox4.Value
     
        Set cellule = Sheets("BD").Cells.Find(What:=cherche2, LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlNext)
        If Not cellule Is Nothing Then
     
        ComboBox3.Value = cellule.Offset(0, -1).Value
     
        Else
       End If
    End If
    End Sub
    Si quelqu'un a une idée, je suis preneur !
    Merci

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

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

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Bonsoir,
    remplaces ta première recherche par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim lg As Long
    .......
    With Sheets("BD")
    lg = .Range("a" & .Rows.Count).End(xlUp).Row
    Set cellule = .Range("a2:a" & lg).Find(cherche1, .Range("a" & lg), , SearchOrder:=xlNext)
    End With
    et la deuxième par


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    .......
    With Sheets("BD")
    lg = .Range("b" & .Rows.Count).End(xlUp).Row
    Set cellule = .Range("b2:b" & lg).Find(cherche1, .Range("b" & lg), , SearchOrder:=xlNext)
    End With
    et adaptes le résultat de ta recherche pour les offset
    Bonne soirée
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: 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 confirmé
    Homme Profil pro
    ELECTROTECHNICIEN
    Inscrit en
    Mars 2010
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ELECTROTECHNICIEN
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2010
    Messages : 61
    Par défaut
    UN grand, grand merci à toi Casefayere,

    Cà marche impeccable !

    Je suis super contant, je bloquais dessus depuis un bon moment!

    Encore merci et bonne soirée

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

Discussions similaires

  1. Comment filtrer un sous formulaire avec un combobox ?
    Par niamo dans le forum VBA Access
    Réponses: 2
    Dernier message: 21/05/2010, 15h35
  2. [VBA]Execution d'une procédure avec un ComboBox sur Excel
    Par delamarque dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 31/01/2006, 10h27
  3. [FLASH MX2004] Probleme avec un combobox
    Par pierrot10 dans le forum Flash
    Réponses: 3
    Dernier message: 28/10/2005, 18h35
  4. [formulaire] filtrer par une combobox
    Par Marie D dans le forum Access
    Réponses: 8
    Dernier message: 19/09/2005, 16h14
  5. [CR 8.5] filtrer avec l'expert selection un champs calculé!!
    Par abdel6908 dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 14/06/2005, 11h30

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