Filtrer automatiquement après une mise à jour

Bonjour,

Voici mon problème et mon fichier joint dont je vais vous expliquer la composition sans quoi mon problème sera difficile à expliquer.

Les deux premiers onglets sont deux bases de données extraites d'un logiciel, qu'un utilisateur colle lorsque les mises à jour son dispo.

Le 3ème onglet "BDD regroupée" combine les deux bases de données en allant chercher uniquement les infos qui m'intéresse par des recherches verticales ou des simples "=telle cellule de telle feuille".

Ensuite trois onglets, équipe B, C et A. Ces trois onglets font exactement le même boulot que "BDD regroupée" et ramène donc l'intégralité des valeurs des deux bases collés en onglet 1 et 2.

Je souhaite que le destinataire du fichier, est juste à cliquer sur l'onglet de son équipe pour voir ces données. Je ne veux pas qu'il soit obliger de sélectionner le filtre et de choisir son équipe alors même qu'il est sur son onglet.

Au début j'avais sélectionné 1 équipe par filtre par onglet. Mais quand on met à jour les deux bases, s'il y avait une ligne qui concernait l'équipe A en ligne 8 de l'onglet de données, et que le mois suivant cette ligne se retrouve en ligne 18 de l'onglet de données, elle ne sera pas prise en compte par le filtre sur l'onglet de l'équipe. Pour qu'elle le soit il faut aller sur chaque onglet d'équipe, cliquer sur le filtre puis cliquer sur ok pour "réactualiser" le filtre.

C'est chiant et fastidieux surtout sur une centaine d'équipe (trois dans l'exemple seulement).

Avez-vous une idée de la manière dont je pourrais faire afin que chaque onglet d'équipe n'aille chercher (ou ne sélectionne) que les données d'une seule équipe ?

Je vous remercie, en espérant avoir été clair...

PS : la solution doit pouvoir fonctionner dans un Excel 2003. Merci.

17fichier-excel.zip (45.51 Ko)

Bonjour

Je ne sais pas trop comment fallait il faire pour faire un test

J'ai essayé en changeant Equipe B pour Equipe A

Code à mettre dans ThisWorkbook

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
  If Left(Sh.Name, 7) = "Equipe " Then
    Range("A7").CurrentRegion.AutoFilter Field:=1, Criteria1:=Sh.Name
  End If
End Sub

Merci de ton intérêt.

Malheureusement je ne comprends pas ta réponse, je n'y connais rien en macro.

Pour tester une solution, mets-toi sur l'onglet "dates_habilitations" et dans la colonne equipe, changes un "équipe A" par un "équipe B".

Simplement en changeant la lettre de l'équipe à la main.

Pour que ca marche il faut que sans action sur le filtre, il n'y ait que du "équipe A" dans l'onglet du même nom, et même chose dans l'onglet "équipe B".

Merci.

Bonjour

En principe c'est ce que j'ai fait

As tu essayé ?

Fichier modifié à vérifier

Je ne sais pas comment entrer ton code.

J'ai essayé en ajoutant le module complémentaire "Macro" j'ai cliqué sur VBA puis sur "code" et j'ai collé ton code mais ça ne fonctionnait pas.

Je ne l'ai peut être pas mis au bon endroit...

Bonjour

As-tu testé le fichier ?

Pas téléchargé encore !!!!!

C'est exactement ça.

Je te remercie beaucoup.

Maintenant il me reste à fouiller pour comprendre comment tu as ajouté ce code, l'intégrer et l'adapter à mon véritable ficher.

Merci encore, je reviendrais vers toi si je n'y arrive pas demain mais avec tes explications ça devrait le faire.

Va vraiment falloir que je me mette au macro...

Rechercher des sujets similaires à "filtrer automatiquement mise jour"