recherche dans autre cellule

  • Initiateur de la discussion Initiateur de la discussion dav787
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

D

dav787

Guest
Bonjour,

Voici mon problème :

J'ai un début de procédure vba et souhaiterais continuer ainsi.


En recherchant une valeur dans une plage précise, je souhaiterais obtenir
la valeur se trouvant sur la même ligne de cette même plage de donnée mais dans une autre colonne
Exemple :

Plage définie : a5 : a35
Ex : valeur cellule a5 = 25
Quelle est la valeur de la cellule se trouvant sur la même ligne mais en
colonne f5 ou une autre cellule ?



Merci
 
Re : recherche dans autre cellule

Salut dav787 et le forum
J'ai un début de procédure vba et souhaiterais continuer ainsi.
Ça serait pas mal que tu donnes ton code, si tu veux continuer.
En recherchant une valeur dans une plage précise, je souhaiterais obtenir la valeur se trouvant sur la même ligne de cette même plage de donnée mais dans une autre colonne
Code:
Sub test()
Dim X
X = [A4:A35].Find(25).Offset(0, 5)
End Sub
Comme Find commence après la première cellule, au lieu de A5, je commence en A4.
Ne connaissant la valeur de la cellule en F, je définis X en Variant
A+
 
Re : recherche dans autre cellule

Bonsoir dav787, Gorfael,

Voir le fichier joint et la macro :

Code:
Sub ChercheSomme()
Dim plage As Range, cel As Range, ref As Range
Application.ScreenUpdating = False
Range("B4:B65536").ClearContents
Set plage = Range("Q11:IV65536")
For Each cel In Range("A4", Range("A65536").End(xlUp))
  Set ref = plage.Find(cel, LookIn:=xlValues, LookAt:=xlWhole)
  If Not ref Is Nothing Then cel.Offset(, 1) = Cells(ref.Row, 256).End(xlToLeft)
Next
End Sub

La recherche de chaque valeur se fait en incluant la colonne Total. S'il faut l'exclure, dites-le.

A+
 

Pièces jointes

Dernière édition:
Re : recherche dans autre cellule

Re,

A la réflexion, il vaut sans doute mieux définir la colonne total et prendre les valeurs qui s'y trouvent.

Code:
Sub ChercheSomme()
Dim plage As Range, total As Range, cel As Range, ref As Range
Application.ScreenUpdating = False
Range("B4:B65536").ClearContents
Set plage = Range("Q9:IV65536")
[COLOR="red"]Set total = plage.Find("Total", LookIn:=xlValues, LookAt:=xlWhole).EntireColumn[/COLOR]
For Each cel In Range("A4", Range("A65536").End(xlUp))
  Set ref = plage.Find(cel)
  If Not ref Is Nothing Then cel.Offset(, 1) = [COLOR="Red"]Intersect(ref.EntireRow, total)[/COLOR]
Next
End Sub

Ici la recherche sur 25868 ne donne pas de total, alors que précédemment si.

A+
 

Pièces jointes

Re : recherche dans autre cellule

Re,

Ca ne va pas fort ce soir, je viens juste de me rendre compte que la recherche du compte doit se faire sur la colonne Q uniquement...

Alors c'est encore plus simple :

Code:
Sub ChercheSomme()
Dim total As Range, cel As Range, ref As Range
Application.ScreenUpdating = False
[B4:B65536].ClearContents
Set total = [Q9:IV9].Find("total", LookIn:=xlValues, LookAt:=xlWhole).EntireColumn
For Each cel In Range("A4", [A65536].End(xlUp))
  Set ref = [Q11:Q65536].Find(cel)
  If Not ref Is Nothing Then cel.Offset(, 1) = Intersect(ref.EntireRow, total)
Next
End Sub

A+
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour