Macro excel: pb de copier/coller dans filtre

Résolu
Léon -  
 Léon -
Bonjour,

Je bloque sur une commande de macro excel, je pense que c'est tout bête mais impossible de trouver: ma macro doit copier la cellule d'une feuille, et la copier dans le filtre "contient" d'une autre feuille (la base de donnée)

A la première exécution ça marche, mais quand je change la valeur de la cellule de départ, pour que la macro aille donc chercher celle là dans l'autre onglet, je me retrouve avec la première

J'ai essayé de modifier le code en renommant ma cellule, en remettant même le chemin d'accès, mais j'ai l'impression qu'il n'est pas possible d'inclure une variable dans une commande de filtre... Je vois vraiment pas comment contourner le truc.

Voila le code vba initial au cas où:
Range("B2").Select
ActiveCell.FormulaR1C1 = "draguignan"
Sheets("Base UU").Select
ActiveSheet.Range("$A$1:$J$36612").AutoFilter Field:=5, Criteria1:= _
"=*draguignan*", Operator:=xlAnd

Merci d'avance de vos réponse!

5 réponses

  1. melanie1324 Messages postés 1561 Statut Membre 156
     
    Bonjour,

    Il est tout à fait possible d'introduire une variable mais la ou il faut l'introduire est :

    actuellement ton code :
    ActiveSheet.Range("$A$1:$J$36612").AutoFilter Field:=5, Criteria1:= _
    "=*draguignan*", Operator:=xlAnd

    signifie qu'il fltre sur draguignan.

    rentres une varaible du style :
    filtre= sheets("feuil1").cells(1,1) 'il faut que tu mets la cellule qui contient draguignan ou autre cells(ligne,colonne) et modifies le nom de feuille et réécris ton code comme ca :

    ActiveSheet.Range("$A$1:$J$36612").AutoFilter Field:=5, Criteria1:= _
    "=" & filtre, Operator:=xlAnd
    0
  2. Leon
     
    Merci pour ta réponse, j'ai essayé ce code mais ça ne marche toujours pas, le critère de recherche dans le filtre devient "FALSE" et la macro se bloque...
    0
  3. melanie1324 Messages postés 1561 Statut Membre 156
     
    j'ai fait une erreur dans l'écriture, essaie comme ca :

    ActiveSheet.Range("$A$1:$J$36612").AutoFilter Field:=5, Criteria1:= filtre, Operator:=xlAnd
    0
  4. Léon
     
    C'est bon ça marche très bien en définissant la variable avant la commande du filtre,

    Merci beaucoup pour tes conseils!
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Léon
     
    Et où est-ce que tu rentres la définition de ta variable filtre=sheets("feuille1") etc, etc ?
    -1