Recherche et copier cellule en dessous de celle contenant texte

Résolu/Fermé
Acc79 Messages postés 3 Date d'inscription lundi 25 avril 2016 Statut Membre Dernière intervention 25 avril 2016 - 25 avril 2016 à 10:44
Acc79 Messages postés 3 Date d'inscription lundi 25 avril 2016 Statut Membre Dernière intervention 25 avril 2016 - 25 avril 2016 à 12:20
Bonjour,

Tout d'abord, je débute en vba et suis un peu perdue... Je ne sais pas s'il est possible de créer une macro pour mon problème.

J'ai un fichier Excel pour évaluer des formations, qui contient 2 feuilles. La première sert de synthèse selon les formations et la deuxième me permet d'évaluer les formations (de façon aléatoire) selon des critères. Il y a une somme automatique pour les cellules de la ligne 4 de la Feuil2.

Pour éviter des copier/coller redondants, je souhaite créer une macros me permettant de :
- Si Formation 1 existe dans la Feuil2 ligne 3, alors copier la valeur de la cellule sous Formation 1 et la coller dans la cellule Feuil1!B3
- Si Formation 2 existe dans la Feuil2 ligne 3, alors copier la valeur de la cellule sous Formation 2 et la coller dans la cellule Feuil1!B4
- Si Formation 3 existe dans la Feuil2 ligne 3, alors copier la valeur de la cellule sous Formation 3 et la coller dans la cellule Feuil1!B5
- et ainsi de suite

Je vous mets deux images pour éclairer mon topo en espérant que cela vous aide.

Merci pour votre aide, bonne journée.


2 réponses

PHILOU10120 Messages postés 6368 Date d'inscription lundi 16 avril 2012 Statut Contributeur Dernière intervention 22 avril 2024 796
25 avril 2016 à 10:56
Bonjour Acc79

Essayer cette formule en B3 et la tirer vers le bas jusqu'à la ligne 8

=SIERREUR(RECHERCHEH(A3;Feuil2!$A$3:$D$4;2;FAUX);"")
0
Acc79 Messages postés 3 Date d'inscription lundi 25 avril 2016 Statut Membre Dernière intervention 25 avril 2016
25 avril 2016 à 11:13
Merci beaucoup ! Cela fonctionne. Il ne me reste plus qu'à la comprendre ensuite... ;-)
Merci
0
Bonjour,

En VBA quelques lignes qui répondent à votre demande :

Option Explicit
Sub résultat()

Dim I As Variant, J As Variant
Dim recherche As String
Dim valeur As Integer

Sheets(1).Activate
Range("B3:B8").ClearContents
Sheets(2).Activate

For I = 2 To Cells(3, Cells.Columns.Count).End(xlToLeft).Column
recherche = Cells(3, I).Value
valeur = Cells(4, I).Value
Sheets(1).Activate
For J = 3 To Range("A" & Rows.Count).End(xlUp).Row
If Cells(J, 1) = recherche Then
Cells(J, 2) = valeur
Exit For
End If
Next J
Sheets(2).Activate
Next I
Sheets(1).Activate
End Sub
0
Acc79 Messages postés 3 Date d'inscription lundi 25 avril 2016 Statut Membre Dernière intervention 25 avril 2016
25 avril 2016 à 12:20
Merci beaucoup Stif.
Bonne journée à tous
0