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