VBA excel : classer selon une colonne

Bonjour,
Je rencontre des difficultés dans l’élaboration d’un programme VBA…
J’aimerais un programme pour chercher dans la colonne A, les mots « chat » par exemple parmi d’autres mots, et prendre le nombre dans la colonne D correspondant.
Ensuite, j’aimerais que ça marque sur une autre feuille, le classement de ces « Chats » (du plus petit au plus grand nombre de la colonne D)
Mais je veux que cela soit possible pour toutes les quantités, par exemple si il y avait 4 fois chat.
A B C D

chien 3
chat Felix 2
poisson 3
chat Pistache 6
souris 1
chat Noireau 1

Ex : sur autre feuille :
ex : Chat Noireau 1
Chat Felix 2
Chat Pistache 6

Merci beaucoup pour votre aide !!!

tu en es où exactement dans l’écriture de ton code ?
Tu bloques sur la partie extraction des lignes « chat », sur la partie tri ou sur la partie écriture dans la feuille 2 ?

Je bloque pour extraire les lignes chats. Mais en fait, ici j’ai simplifié, mais entre le prénom du chat est le numéro, j’ai plein d’autres données qui ne m’intéressent pas : je souhaite donc seulement sélectionner la colonne D avec les colonnes A et B (ici).
Là où je bloque :

  1. Faire la recherche sur toutes les lignes
    2)Sélectionner la colonne D
    3)faire en sorte que ça les mette sur l’autre feuille
    Et après, pour ranger dans l’ordre, ça va…
    Merci :wink:

Pour la lecture/recherche :
Si tu as une colonne avec simplement le mot « chat » dans les lignes qui t’intéressent, tu fais une boucle.
Et la cellule de la colonne D, par rapport de celle de A se trouve par un .offset()

[b]for each c in range(les cellules utilisées de la colonne A)
if c = « chat » then
nombre=c.offset(0,3)
endif
next

[/b]pour écrire:
Tu te sers d’un Range que tu fais évoluer en fonction de ton écriture :
Set R = Range(la première cellule dans laquelle tu veux écrire)
R= c (là tu écris « chat »)
R.offset(0,1)=nombre
set R=R.offset(1)
(là tu passes à la ligne suivante)

Merci beaucoup…
Mais le problème est que ça sélectionne uniquement la dernière ligne concernée !
Car, je pense, avant le « next », ça sélectionne à chaque fois, et il reste dans « nombre » seulement la dernière information… d’où l’écriture sur la feuille résultat, seulement du dernier « chat » sélectionné…

Ce n’est pas un programme clés en mains, ce sont des pistes pour y arriver.
C’est à toi d’imbriquer correctement les deux actions pour que ça fonctionne.

Et si tu bloques, tu donnes ton code pour qu’on puisse voir à quel endroit ça ne marche pas.