Formule Somme avec derniere lignes qui varie [Résolu]

Signaler
Messages postés
53
Date d'inscription
jeudi 29 mars 2012
Statut
Membre
Dernière intervention
9 juin 2012
-
Messages postés
53
Date d'inscription
jeudi 29 mars 2012
Statut
Membre
Dernière intervention
9 juin 2012
-
Bonjour le forum,

Je me retrouve avec un nouveaux problème de formules
=SOMME(D8:dernière ligne qui varie )/SOMME(B8:dernière ligne qui varie )
, donc je calcule une somme d'une plage jusque la tout va bien , le problème et que la dernier ligne de la plage de somme varie donc je n'arrive pas écrire ma formule , j'ai essayer avec ceci
[code=vb]=RECHERCHEV(9^9;A:A;1)
/code mais rien n'y fait , cela ne fonctionne pas car il me donne juste la dernière valeur de la colonne , merci d'avance pour toute solution apporter .

5 réponses

Messages postés
53
Date d'inscription
jeudi 29 mars 2012
Statut
Membre
Dernière intervention
9 juin 2012

Salut,

donc voici la solution que j'ai obtenue par aide :
=SOMME(D:D)/SOMME(B:B)
Messages postés
1835
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
9
erratum :

Dim Lig2 as Long
Dim MaFeuille As WorkSheet
Set MaFeuille = ActiveSheet 'la feuille étant un objet l'instruction "Set" est obligatoire
With MaFeuille
   Lig2 = .Range("A" & .Columns("A").Rows.Count).End(xlUp).Row
   .Range("A2").Value = Application.WorksheetFunction.Max(.Range("K8:K" & Lig2))
End With


A+
Messages postés
53
Date d'inscription
jeudi 29 mars 2012
Statut
Membre
Dernière intervention
9 juin 2012

re-salut ,

j'ai une dernière formule a adapter du même genre celle-ci permet de connaitre la valeur max sur une colonne je veux l’intégrer a ma macro donc j'ai crée une variable Lig2 qui me permettra de connaitre la dernière ligne de la colonne et ainsi réaliser mon calcule . formule
 ActiveCell.FormulaR1C1 = "=VLOOKUP(9^9,C,1)"
et macro
Dim Lig1 As Long, Lig2 As Long

Lig2 = 'ici que je veux  connaitre la dernière ligne de la colonne A
Range("A2").Formula = "=MAX(K8:K" & Lig2 & ")"
'

End Sub


En espérant que cela fonctionne , merci .
Messages postés
1835
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
9
Salut,

pas besoin d’écrire la formule dans la cellule de résultat puisque seul la valeur t’intéresse. Pour cela il est possible d'utiliser un certain nombre de fonction excel dans le VBA via la propriété "WorksheetFunction".
Prend aussi l'habitude de spécifier la feuille sur la quelle tu travailles pour éviter les ennuis. Comme je ne connais pas le nom de la feuille j'ai fait autrement mais cela revient à peu près au même

Dim Lig2 as Long
MaFeuille As WorkSheet
Set MaFeuille = ActiveSheet
With MaFeuille
   Lig2 = .Range("A" & .Columns("A").Rows.Count).End(xlUp).Row
   .Range("A2").Value = Application.WorksheetFunction.Max(.Range("K8:K" & Lig2))
End With



A+
Messages postés
53
Date d'inscription
jeudi 29 mars 2012
Statut
Membre
Dernière intervention
9 juin 2012

Salut,

Merci pour la solution et le conseil , oui déclaré la feuille évite certains problèmes .