Bonjour à vous deux,
Désolé pour le délai !! Je ne sais pas trop comment imbriqué les deux bouts de code :
Merci encore pour votre aide précieuse !
Vincent
La première partie de James :
Dim c As Range
Dim rng As Range
Dim x As Long
Set rng = Range("B2:B1000")
For Each c In rng
If c.Value <> "" And c.Value <> "CAD" Then
x = Application.Match("CAD", Range(Cells(c.Row, 2), Cells(1000, 2)), 0) - 1
c.Copy Destination:=c.Resize(x).Offset(0, -1)
End If
Next c
La deuxième de Dhany :
Dim NomClient As String, chn As String
NomClient = ... ' complète par ce que tu as déjà fait pour la boucle de lecture des noms
chn = UCase$(Left$(NomClient, 2)) ' les 2 premiers caractères du nom, en majuscules
If Not (IsNumeric(NomClient) Or chn = "PY" Or chn = "IN") Then
' Client à copier : nom n'étant pas un nombre et commençant ni par "PY", ni par "IN"
End If