RE
Voici mes premières remarques :
- le fichier que tu m'as envoyé ne contient pas la macro qui affiche la boîte de dialogue et permet sans doute de remplir ta zone de critères.
- la boîte de dialogue ne distingue pas câble et conecteur alors qu'il y a les 2 infos dans le tableau.
- de façon générale, il est plus que préférable de ne pas mettre les tableaux les uns sous les autres, mais côte à côte (en sautant une colonne au moins) et de définir la zone de données et la zone d'extraction en tant que colonnes (A:H et AA:AH par exemples) car en définissant une plage d'extraction tu limites le nombre de lignes et tu risques donc de perdre des données (ce qui semble être ton cas).
- pourquoi ne pas avoir dans le tableau une seule colonne contact pour les valeurs F et O qui semblent alternatives ?
- il n'est pas nécessaire de créer plusieurs filtres successifs : si les colonnes existent dans les critères mais sans données en dessous le filtre n'en tient pas compte et filtre sur les colonnes ayant des valeurs de critères.
- en VBA évites les goto : dans ton cas le code ne sert qu'une fois donc tu peut le mettre dans le if, sinon, quand il doit servir plusieurs fois, crée des fonctions.
En raison des points 1 et 2, je n'ai pas toute la logique, donc je ne peux te donner plus d'élèments.
Essaies de revoir en fonction des points suivants et, si tu coinces, repostes.
Chris