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 :

Macro recherche valeur et copier coller [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Cadre administratif
    Inscrit en
    Août 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Cadre administratif
    Secteur : Service public

    Informations forums :
    Inscription : Août 2011
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Macro recherche valeur et copier coller
    Bonjour,
    Je recherche un code VBA qui me permette de faire l'action suivante :
    J'ai un classeur avec trois feuilles (formulaire, base de données et table provisoire)
    Je voudrais que, lorsque dans "formulaire", je rentre une donnée en cellule B3, je puisse, par macro, rechercher les lignes de ma base de données qui contiennent cette valeur dans la colonne B et copie chaque ligne dans la table provisoire à partir de ligne 3 (la ligne 1 étant l'entête des colonnes et la ligne 2 doit toujours rester vide).
    Cela fait une semaine que je cherche sur internet mais ne trouve rien. Merci de votre aide.

  2. #2
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Bonsoir
    Cela fait une semaine que je cherche sur internet mais ne trouve rien.
    Il fallait chercher dans ton fichier Excel en utilisant l'enregistreur de macro (pour commencer)

    Sinon, une solution clef en main (je ne pense pas qu'elle va t'aider) en utilisant l'évènement Change de ta feuille formulaire combiné avec un filtre automatique sur la colonne B de ta feuille base de données et copie du résultat vers la feuille table provisoire

    Code commenté à mettre dans le module de ta feuille formulaire
    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
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim LastLig As Long
     
    Application.ScreenUpdating = False
    'Si la cellule changée est B3
    If Target.Address(0, 0) = "B3" Then
        'On efface les données de table provisoire
        Worksheets("table provisoire").Range("B3").CurrentRegion.Clear
        'Si la cellule B3 n'est pas vide
        If Target.Value <> "" Then
            With Worksheets("base de données")
                'On supprime l'éventuel filtre automatique
                .AutoFilterMode = False
                'dernière ligne remplie de la colonne B de la feuille base de données
                LastLig = .Cells(.Rows.Count, "B").End(xlUp).Row
                'On filtre la colonne B avec comme critère la valeur entrée en B3 de forumlaire
                .Range("B1:B" & LastLig).AutoFilter field:=1, Criteria1:=Target.Value    'Ou "*" & target.value &"*" 'Si on filtre sur ls données contenant la valeur entrée en B3
                'Si on a ua moins une ligne résultante du filtre, en copie les lignes visibles (sans les titres) en A3
                If .Range("B1:B" & LastLig).SpecialCells(xlCellTypeVisible).Count > 1 Then .Range("B2:B" & LastLig).SpecialCells(xlCellTypeVisible).EntireRow.Copy Worksheets("table provisoire").Range("A3")
                'On supprime notre filtre
                .AutoFilterMode = False
            End With
        End If
    End If
    End Sub

  3. #3
    Candidat au Club
    Homme Profil pro
    Cadre administratif
    Inscrit en
    Août 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Cadre administratif
    Secteur : Service public

    Informations forums :
    Inscription : Août 2011
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    Merci à toi. Ca marche avec quelques petites modif mais c'est exactement ce que je recherchais.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 27/10/2014, 16h59
  2. Macro plage de cellule copier coller valeur si numérique
    Par olly34 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 04/02/2014, 17h58
  3. Réponses: 1
    Dernier message: 18/12/2013, 14h14
  4. Macro recherche données pour copier dans une autre feuille
    Par Philippine dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 29/04/2013, 20h26
  5. [XL-2002] Macro recherche valeur colonne+application formule
    Par help_2008 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 22/04/2009, 14h44

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