Trouvez une valeur de cellule et remplissez d'autres cellules en fonction de la valeur de la cellule

l'installation: j'ai une valeur x (qui peut être modifiée via un drop down menu) dans une cellule de la feuille A. Vérifiez si la même valeur existe dans la feuille B et renvoyez le contenu de la cellule répertorié dans la même colonne ci-dessous jusqu'à la première cellule vierge . Copiez ces cellules sur la feuille A à nouveau.

Par exemple:

Feuille 1, la colonne A contient un en-tête "Unité". La colonne B a un en-tête de salarié. À partir de ce champ d'unité, je peux choisir via la fonction déroulante quelques unités (ventes, marketing, programmation, …).

Dans la feuille B, vous pouvez find un set de mini-tables.

Il existe les unités indiquées par bâtiment. Chacun de ces 6 bâtiments (1 bâtiment par colonne, AF) a ses propres unités listées dans la même colonne. Les unités listnt certains noms d'employés et se terminent par une cellule vide comme séparateur pour l'unité suivante.

Feuille2: colonne A

Building1 – Ventes
Peter
Judy
Franz
Rico

Building1 – Marketing
Sablonneux
Aaron
Fred

Building1 – Programmation
Sheldon
Lara

Feuille 2 La colonne B est identique à Building2 -Sales …..

Maintenant, dans la list déroulante de la feuille A, je sélectionne la valeur «Bâtiment1 – Marketing» La colonne B de la fiche A devrait maintenant être remplie avec les noms des employés de l'unité de commercialisation de Building1, ce serait Sandy, Aaron et Fred.

C'est un exemple cependant, mais la command dans la deuxième feuille est comme ça …

J'ai lu sur le remplissage, ce qui, je pense, est la mauvaise façon. Aussi, je pourrais probablement find x dans la feuille B, faire un count sur les valeurs ci-dessous jusqu'à ce que le blanc arrive, puis utiliser la valeur pour sélectionner, copyr et coller les valeurs.

Comment cela peut-il être fait?

rgds

Sub Macro1() Sheets("Feuil2").Select 'selects sheet 2 'finds what you chose in the dropdown list Cells.Find(What:=Feuil1.MyDropDownList1.value, After:=ActiveCell, LookIn:= _ xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _ xlNext, MatchCase:=False, SearchFormat:=False).Activate 'selects from the line below till the line before blank Range(ActiveCell(2, 1), Range(ActiveCell.End(xlDown).Address)).Select Selection.Copy Sheets("Feuil1").Select Range("B1").Select ActiveSheet.Paste End Sub 

J'espère que cela vous donnera une idée. Vous devrez apporter quelques modifications en fonction du nom de votre feuille et de votre nom de la list déroulante.

Bonne chance