Oui en créant des noms définis :mais je peus change d4 et e3 avec nom de label dans userform
Private Sub UserForm_Activate()
ThisWorkbook.Names.Add "Label1", Label1 'nom défini
ThisWorkbook.Names.Add "Label2", Label2 'nom défini
'Lab1 = [SUMPRODUCT((A4:A18=Label1)*(B4:B18=Label2))]
Lab1 = [SUM((A4:A18=Label1)*(B4:B18=Label2))] 'formule matricielle (plus simple)
End Sub
Private Sub UserForm_Activate()
Lab1.Caption = Evaluate("=SUMPRODUCT((A4:A18=D4)*(B4:B18=E3))")
End Sub
Private Sub UserForm_Activate()
Lab1.Caption = Evaluate("=SUMPRODUCT((Feuil1!A4:A18=Feuil1.D4)*(Feuil1!B4:B18=Feuil1!E3))")
End Sub
merci bcp izngood1 il marche tres bien mais je peus change d4 et e3 avec nom de label dans userformBonjour
VB:Private Sub UserForm_Activate() Lab1.Caption = Evaluate("=SUMPRODUCT((A4:A18=D4)*(B4:B18=E3))") End Sub
Oui en créant des noms définis :mais je peus change d4 et e3 avec nom de label dans userform
Private Sub UserForm_Activate()
ThisWorkbook.Names.Add "Label1", Label1 'nom défini
ThisWorkbook.Names.Add "Label2", Label2 'nom défini
'Lab1 = [SUMPRODUCT((A4:A18=Label1)*(B4:B18=Label2))]
Lab1 = [SUM((A4:A18=Label1)*(B4:B18=Label2))] 'formule matricielle (plus simple)
End Sub
merci bcp izngood1 il marche tres bien mais je peus change d4 et e3 avec nom de label dans userform
dommage il saffiche erreurre
attention on est dans un userform il n'est par forcé que les precedents de la formule soit du sheet actif
remplacer "Feuil1" par le non la feuille que tu veux
VB:Private Sub UserForm_Activate() Lab1.Caption = Evaluate("=SUMPRODUCT((Feuil1!A4:A18=Feuil1.D4)*(Feuil1!B4:B18=Feuil1!E3))") End Sub
Merci beaucoup. Le code fonctionne très bien. Je vous remercie encoreBonjour ziyad djalil, Iznogood1, patricktoulon, le forum,
Oui en créant des noms définis :
Plutôt que SUMPRODUCT il est plus simple d'utiliser la fonction SUM qui est évaluée en matriciel.VB:Private Sub UserForm_Activate() ThisWorkbook.Names.Add "Label1", Label1 'nom défini ThisWorkbook.Names.Add "Label2", Label2 'nom défini 'Lab1 = [SUMPRODUCT((A4:A18=Label1)*(B4:B18=Label2))] Lab1 = [SUM((A4:A18=Label1)*(B4:B18=Label2))] 'formule matricielle (plus simple) End Sub
Et il est inutile d'indiquer la propriété Caption puisque c'est celle qui est prise par défaut.
Bonne journée.