1 pièce(s) jointe(s)
Methode Find un peu particulière
Bonjour à tous,
Je sollicite votre aide car malgré mes recherches sur le forum je n'arrive pas à comprendre comment utiliser la méthode find.
En effet, je souhaiterais comparer une lignes de dates avec une plage de cellules qui contient aussi des dates pour qu'à l'intersection entre la ligne et la colonne soit affiché ladite date.
Etant donné que j'ai un grand nombre de dates à traiter, je me suis dit que cette méthode était le moyen d'avoir une macro très rapide.
En espérant solliciter votre attention et votre aide,
Vbamateur.
(voici ci dessous une de mes tentative infructueuse que je considérais pas si fausse que ça. Le soucis est cependant que je ne traite que la colonne B alors que je voudrais le faire avec tout le petit tableau...)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| Sub xx()
Dim r, rech As Range
Dim LUser As Integer
LUser = 4
Do
passageligne2:
LUser = LUser + 1
If ActiveWorkbook.Sheets("feuil1").Range("B" & LUser).Value = "" Then Exit Do
rech = ActiveWorkbook.Sheets("feuil1").Range("B" & LUser).Value 'Valeur recherchée
Set r = Sheets("feuil1").Range("F4:V4").Find(rech2, xlByRows, LookIn:=xlValues, LookAt:=xlWhole) 'plage ou j'effectue la recherche'
If r Is Nothing Then
GoTo passageligne2
Else
'Si la ligne existe, transfert des informations dans la cellule souhaitée'
ActiveWorkbook.Sheets("feuil1").Cells(LUser, r.Columns).Value = ActiveWorkbook.Sheets("feuil1").Range("B" & LUser).Value
End If
Loop
End Sub |