Bonjour à tous,
j'ai un petit problème avec l'utilisation de la fonction Find
J'ai la macro suivante :
Le range "Liste" étant comme son nom l'indique une liste de données correspondant à une plage de cellule (A1:A10).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Columns("B:B")) Is Nothing Then Dim K As Range Set K = Sheets("Données").Range("Liste").Find(Target) If Not K Is Nothing Then Target.Offset(0, 4).Value = K.Offset(0, 1).Value End If end sub
Et je ne comprend pas pourquoi, mais la macro ne fonctionne pas...
Ce qu'il faut savoir, c'est que les données de la liste ne sont pas rentrées en dur, mais sont liées à d'autres cellules de la feuille par une formule (type : =$B$1)
J'ai essayé pour voir de rajouter une valeur en dur dans ma liste. Et cette fois-ci ma macro fonctionne, mais uniquement pour cette valeur.
J'en conclus donc que la fonction Find trouve dans une liste donnée une valeur si celle-ci est entrée en dur, mais pas si elle est liée par une formule à une autre cellule.
Quelqu'un sait-il comment résoudre ce problème? J'éspère avoir été assez clair dans mon explication.
D'avance merci pour vos réponses, cordialement
Partager