1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| Sub Ossatures()
Dim ShSource As Worksheet
Dim ShCible As Worksheet
Dim LigneCibleEnCours As Long
Dim I As Long
Dim ValeursAChercher As Variant
Set ShSource = Sheets("Tarif")
Set ShCible = Sheets("MaJ référence")
LigneCibleEnCours = 3
ValeursAChercher = Array(1830140, 1830141, 1830142, 1830143, 1830134, 1830135, 1684748, 1830136, 1830131, 1830132, 1830133, 1877600, 3099675, 1174113, 1606496) 'L'ordre a son importance pour le résultat.
'to 2 nombre de référence recherche
For I = 1 To 15
'cible range colonne de destination
RecuperationDonnees ShSource, ValeursAChercher(I - 1), ShCible.Range("A" & LigneCibleEnCours)
LigneCibleEnCours = LigneCibleEnCours + 1 ' Si les résultats doivent s'ajouter les uns à la suite des autres
Next I
Set ShSource = Nothing
Set ShCible = Nothing
End Sub
Sub RecuperationDonnees(ByVal FeuilleSource As Worksheet, ByVal ValeurRecherchee As Variant, CelluleCible As Range)
Dim CelluleRecherchee As Range
Set CelluleRecherchee = FeuilleSource.Columns("A").Find(what:=ValeurRecherchee, LookIn:=xlValues, lookat:=xlWhole)
'colonne recherche
If Not CelluleRecherchee Is Nothing Then CelluleCible = CelluleRecherchee.Offset(0, 1)
Set CelluleRecherchee = FeuilleSource.Columns("B").Find(what:=ValeurRecherchee, LookIn:=xlValues, lookat:=xlWhole)
End Sub |
Partager