Sub Test()
Dim i As Long, MaPlage As Range
Dim Ws As Worksheet, Ws1 As Worksheet
Range("E20").Value = Range("E20").Value + 1
'Feuilles
Set Ws = Sheets("BDD")
Set Ws1 = Sheets("Fact PCE Auto")
'Plage de référence, avec les dates en troisième colonne de la plage et les références clients en deuxième de la plage
Set MaPlage = Ws.Range("A4:F" & Ws.Range("AN65536").End(xlUp).Row)
'Les cellules E3, F3 et G3 correspondent aux infos que l'on rentre, il faut les changer dans la suite du code si on modifie leur position
If Ws1.Range("N12").Value = "" Or Ws1.Range("B24").Value = "" Or Ws1.Range("E20").Value = "" Then
MsgBox "Tous les champs doivent être remplis!", vbCritical, "Attention!"
Else
With Ws
For i = MaPlage.Row + 1 To MaPlage.Rows.Count + MaPlage.Row - 1
If .Cells(i, MaPlage.Column + 49).Value = Ws1.Range("B24").Value And .Cells(i, MaPlage.Column + 6).Value = Ws1.Range("N12").Value Then
.Cells(i, MaPlage.Column + (MaPlage.Columns.Count + MaPlage.Column + 54)).Value = Ws1.Range("E20").Value
End If
Next i
End With
End If
End Sub