Bonjour
je cherche à faire une opération simple à coder avec une macro, mais qui se révèle peu performante et donc désagréable pour l'utilisateur.
Voilà le problème, simplifié :
Je dispose d'une blacklist :
Type 1
Type 3
Type 4
J'ai une table :
Item 1 Type 1
Item 2 Type 2
Item 3 Type 5
Item 4 Type 4
Item 5 Type 2
Item 6 Type 3
Item 7 Type 2
Item 8 Type 4
Je veux obtenir :
Item 2 Type 2
Item 3 Type 5
Item 5 Type 2
Item 7 Type 2
D'un point de vue algorithme, c'est élémentaire : Une double boucle for, un if et on n'en parle plus.
Malheureusement, la blacklist contient des dizaines d'éléments et la liste à trier des centaines. Le temps de calcul augmente vite... surtout que VBA est hyper mauvais pour ça !
Connaîtriez vous une méthode propre à excel qui me permette d'effectuer cette opération de manière efficace, comme avec un filtre, ou un tableau croisé dynamique ?
Partager