> Bonjour Denis,
> Toujours fidèle au poste !!!
> Le seul avantage, c'est qu'on peut mettre en variable numérique le numéro de ligne et de colonne, donc plus facile à manipuler si l'on souhaite trouver une cellule en fonction d'un calcul.
> Les formules qui renvoient le numéro de colonne en fonction de la lettre sont un peu plus lourdes !
> Mais j'avoue que je n'aime pas non plus !!
Voici un exemple avec seulement des variables. Rien ne t'empêche
d'utiliser des variables dans une formule plus traditionnelle comme :
"=SUMPRODUCT((left(E2:E1000,2)=""SR"")*(G2:G1000))"
Ce code est beaucoup plus facile à lire et à interpréter. La difficulté
c'est souvent les guillemets...c'est une question de pratique et un peu
d'effort de compréhension!
'------------------------
Sub test()
Dim Rg As String
Dim Rg1 As String
Dim LastRow As Long
Dim T As String
T = "SR"
With Worksheets("Feuil1")
'Trouve la dernière ligne occupée de la colonne E
LastRow = .Range("E" & .Rows.Count).End(xlUp).Row
'Comme ce code est écrit pour être employé dans n'importe
'quel module, j'insère le nom de la feuille devant la
'plage de cellule
Rg = .Name & "!" & .Range("E2:E" & LastRow).Address
Rg1 = .Name & "!" & .Range("F2:F" & LastRow).Address
'Et tu choisis la cellule où tu veux avoir le résultat.
.Range("A1") = "=SUMPRODUCT((left(" & Rg & ",2)=""" & T & """)*(" &
Rg1 & "))"
End With
End Sub
'------------------------
MichD