Visual Basic: Formule SOMME.SI jusqu'à la dernière ligne

Résolu/Fermé
Signaler
Messages postés
163
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
31 mars 2021
-
Messages postés
163
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
31 mars 2021
-
Bonjour,

Je ne sais pas comment écrire en Visual Basic la formule suivante:

=SI($F2<>0;SOMME.SI($A$2:$A$8569;$A2;$AK$2:$AK$8569);"")

En fait, je veux que ma Macro copie cette formule dans chaque cellule de 'BI', jusqu'à la dernière donnée de 'A', dont le numéro de ligne changera hebdomadairement de façon imprévisible. pour ça, ça va. Je connais cette méthode pour copier la formule:

Range("BI2").Select
derlig = Columns("A").Find("*", , , , , xlPrevious).Row
With Range("BI2")
.FormulaR1C1 = _
La formule"
.AutoFill Destination:=Range("BI2:BI" & derlig)
End With

Mon problème est la formule elle-même. Je ne sais pas comment l'écrire pour qu'elle cherche dans 'A' jusqu'à la dernière ligne aisni que dans 'AK'.

Voici le lien à mon fichier échantillon: https://www.cjoint.com/?3LerFK5k2yy

Merci :-)


2 réponses

Messages postés
24222
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
29 novembre 2021
6 980
Bonjour,

.FormulaLocal = "=SI($F2<>0;SOMME.SI($A$2:$A$" & derlig & ";$A2;$AK$2:$AK$" & derlig & ");"""")"

eric
Messages postés
163
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
31 mars 2021
47
Merci Éric. Ça fonctionne.