Bonjour le forum
J'ai récupéré sur un forum les éléments d'un code que j'ai adapté à mon besoin.
Le code fonctionne mais si le nombre de ligne est important, excel ne demande qu'à planter.
Voici le code:
Si je défini un nombre de ligne plus léger il n'y a aucun signe de ralentissement.
Le but du code est de récupérer dans la feuille Condensé les valeurs des cellules d'une colonne ( F ) lorsqu'il i y a
des cellules communes entre les feuilles Nomenclature client ( colonne D )et Condensé ( colonne B ).
Une fois la valeur commune trouvée, la valeur de la cellule dans Condensée (colonne F) est copiée dans la ligne correspondante à la valeur commune en feuille Nomenclature client ( colonne H ).
Je joint un fichier pour mettre des images sur les mots.
Merci pour votre aide
J'ai récupéré sur un forum les éléments d'un code que j'ai adapté à mon besoin.
Le code fonctionne mais si le nombre de ligne est important, excel ne demande qu'à planter.
Voici le code:
Code:
Sub Répartition()
Set TAB1 = Sheets("Nomenclature client")
Set TAB2 = Sheets("Condensé")
For i = 1 To 1000
For n = 1 To 1000
If TAB1.Cells(i, 4).Value = TAB2.Cells(n, 2).Value Then
TAB1.Cells(i, 8).Value = TAB2.Cells(n, 6).Value
End If
Next
Next
End Sub
Si je défini un nombre de ligne plus léger il n'y a aucun signe de ralentissement.
Le but du code est de récupérer dans la feuille Condensé les valeurs des cellules d'une colonne ( F ) lorsqu'il i y a
des cellules communes entre les feuilles Nomenclature client ( colonne D )et Condensé ( colonne B ).
Une fois la valeur commune trouvée, la valeur de la cellule dans Condensée (colonne F) est copiée dans la ligne correspondante à la valeur commune en feuille Nomenclature client ( colonne H ).
Je joint un fichier pour mettre des images sur les mots.
Merci pour votre aide