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 un tableau en VBA [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Gestionnaire de contrats
    Inscrit en
    Octobre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Gestionnaire de contrats
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2011
    Messages : 7
    Par défaut Filtrer un tableau en VBA
    Bonjour à tous

    Je suis en train d'établir un carnet d'adresses

    La première partie concernant la saisie des contacts avec un formulaire fonctionne.

    Je bute sur la deuxième partie concernant la recherche d'un contact

    1°) à partir du nom
    2°) à partir des 3 premiers critères (Secteur - Activité - Service)

    La USERFORM utilisée pour la recherche s'appelle "usfRecherche" En cours d'élaboration sur laquelle je bute

    Mon idée serait
    1°)de faire un filtre en utilisant des COMBOBOX
    2°)Récupérer la ligne du contact filtré
    3°)Recopier toutes les cellules de la ligne dans mon formulaire de saisie "usfEnregistrement" pour la visualisation du contact

    Je suis preneur de toute autre idée pour la visualisation.

    Merci d'avance

    Cordialement

    Ci joint le fichier Excell concerné "Contacts (3)
    Fichiers attachés Fichiers attachés

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 8
    Par défaut Solution
    Bonjour,

    Utilise le code suivant,

    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
    48
    49
    50
    51
     
     
    Private Sub CommandButton1_Click()
     
    Dim contacts As Object
    Dim nom As String
    Dim ligNom As Integer
    Dim cellule As Object
     
    Set contacts = Sheets("Contacts")
     
    nom = Me.cmbListRecherche
    ligNom = False
    For Each cellule In Range("rechnom")
        If cellule = nom And ligNom = False Then
            ligNom = cellule.Row
        End If
    Next cellule
     
    If ligNom <> False Then
        usfEnregistrement.cmbListbra.Value = contacts.Cells(ligNom, 1).Value
        usfEnregistrement.cmbListact.Value = contacts.Cells(ligNom, 2).Value
        usfEnregistrement.cmbListdépart.Value = contacts.Cells(ligNom, 3).Value
        usfEnregistrement.txtNom.Value = contacts.Cells(ligNom, 4).Value
        usfEnregistrement.txtAdres1.Value = contacts.Cells(ligNom, 5).Value
        usfEnregistrement.txtAdres2.Value = contacts.Cells(ligNom, 6).Value
        usfEnregistrement.txtAdres3.Value = contacts.Cells(ligNom, 7).Value
        usfEnregistrement.txtCpost.Value = contacts.Cells(ligNom, 8).Value
        usfEnregistrement.txtVille.Value = contacts.Cells(ligNom, 9).Value
        usfEnregistrement.txtPays.Value = contacts.Cells(ligNom, 10).Value
        usfEnregistrement.cmbListCiv1.Value = contacts.Cells(ligNom, 12).Value
        usfEnregistrement.txtInt1.Value = contacts.Cells(ligNom, 13).Value
        usfEnregistrement.txtTel1.Value = contacts.Cells(ligNom, 14).Value
        usfEnregistrement.txtFax1.Value = contacts.Cells(ligNom, 15).Value
        usfEnregistrement.txtMob1.Value = contacts.Cells(ligNom, 16).Value
        usfEnregistrement.txtMail1.Value = contacts.Cells(ligNom, 17).Value
        usfEnregistrement.cmbListCiv2.Value = contacts.Cells(ligNom, 18).Value
        usfEnregistrement.txtInt2.Value = contacts.Cells(ligNom, 19).Value
        usfEnregistrement.txtTel2.Value = contacts.Cells(ligNom, 20).Value
        usfEnregistrement.txtFax2.Value = contacts.Cells(ligNom, 21).Value
        usfEnregistrement.txtMob2.Value = contacts.Cells(ligNom, 22).Value
        usfEnregistrement.txtMail2.Value = contacts.Cells(ligNom, 23).Value
     
        Unload Me
        usfEnregistrement.Show
     
    Else
        MsgBox ("Le nom" & nom & " est introuvable")
    End If
     
    End Sub
    Bonne journée

  3. #3
    Membre régulier
    Homme Profil pro
    Gestionnaire de contrats
    Inscrit en
    Octobre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Gestionnaire de contrats
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2011
    Messages : 7
    Par défaut
    Bonjour

    Merci infiniment pour votre réponse, j'ai enregistré la syntaxe et mon application fonctionne parfaitement, merci encore.

    Ma dernière étape serait de pouvoir filtrer les noms dans les niveaux hiérarchiques

    1°)Secteur
    2°)Activité

    Ensuite choisir un nom dans les plages filtrées et l'afficher de la même façon que pour la recherche du nom seul.

    Accepteriez vous de m'indiquer comment faire ce filtre et j'essaierais de l'associer avec la syntaxe déjà envoyée.

    Vous en remerciant par avance

    Très cordialement

    Jean Louis Duboc

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

Discussions similaires

  1. traiter un tableau en vba
    Par jrege75 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/01/2009, 21h48
  2. Filtrer un tableau croisé
    Par moumoune65 dans le forum SAP Crystal Reports
    Réponses: 0
    Dernier message: 10/12/2008, 14h22
  3. tableau en VBA
    Par Daranc dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 23/09/2008, 10h22
  4. [VBA-E] Comment créer un tableau sous vba excel
    Par jeanpierreco dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/01/2007, 09h52
  5. Filtrer un tableau de données
    Par Yux dans le forum Langage
    Réponses: 12
    Dernier message: 13/10/2005, 22h21

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