Macro recherche "multiple" [Résolu]

Messages postés
36
Date d'inscription
lundi 29 janvier 2007
Statut
Membre
Dernière intervention
17 janvier 2017
- - Dernière réponse : Yous00
Messages postés
36
Date d'inscription
lundi 29 janvier 2007
Statut
Membre
Dernière intervention
17 janvier 2017
- 26 janv. 2011 à 17:33
Bonjour,

Pourriez-vous m'aider sur ce problème:
je voudrais une macro qui commence une recherche texte ou data en colonne A, quand il trouve le cette data (ex en A10) il recherche dans une autre colonne B mais a partir de ligne trouver (ex b10) et enfin quand il trouve la dernière data il enregistre la valeure dans la colonne Cx dans la cellule DX
J'espère que cela est comprehensible, merci

Cdlt
Jyb
Petit bidouilleur en excel (vba) ...
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
36
Date d'inscription
lundi 29 janvier 2007
Statut
Membre
Dernière intervention
17 janvier 2017
3
Merci
Slt USERRRQI115,

Merci pour ton aide mais cela est un peut plus compliquer je crois, je n'arrive pas a me dépatouiller avec ce que tu m?as donné. Dans la colonne A il y a des cellules vide idem en B et C et les data qui ce trouve dans la colonne B peuvent ce répéter en fait il y en a autant qu'il y a de data en A, il faudrait que tu ai le tableau pour comprendre c'est plus simple. Merci encore pour ton aide.


Cdlt
Jyb
Petit bidouilleur en excel (vba) ...

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 191 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Yous00
Messages postés
181
Date d'inscription
mardi 18 novembre 2008
Statut
Membre
Dernière intervention
4 février 2011
0
Merci
Hello Yous00,
Pour tout te dire, je suis pas sur de tout comprendre
Du coup j'ai un petit bout de code pour toi, code à compléter (definition des valeurs à rechercher val1 et val2)
et à adapter au niveau du resultat : ici je met la valeur de la colone C en D à partir de la ligne 1
Sub AlorsOnCherche()

Dim val1, val2, resultc
Dim r, r2, ra, rd
Dim cell, cell2
rd = 1 '

r = Cells(65536, 1).End(xlUp).Row 'recuperation de la derniere cellule non vide de la colonne A
r2 = Cells(65536, 2).End(xlUp).Row 'recuperation de la derniere cellule non vide de la colonne B

For Each cell In Range(Cells(1, 1), Cells(r, 1)) 'balayage de la colonne A
If cell.Value = val1 Then 'si on trouve la 1ère valeur on  récupére son n° de ligne
ra = cell.Row

For Each cell2 In Range(Cells(ra, 2), Cells(r, 2)) 'balayage de la colonne B
If cell2.Value = val2 Then 'si on retrouve la 2nde valeur
resultc = cell2.Offset(0, 1).Value 'on stock la valeur de la cellule de la colonne C sur la ligne
'où a été trouvé la seconde valeur
Cells(rd, 4).Value = resultc '
rd = rd + 1
End If
Next cell2
End If
Next cell

End Sub

BR
USERRRQI115
Simple user
Great brain
Commenter la réponse de userrrqi115