[vba excel] insertion des formules dans les c

Fermé
chercheur92 Messages postés 28 Date d'inscription jeudi 20 juillet 2006 Statut Membre Dernière intervention 29 octobre 2006 - 27 juil. 2006 à 16:37
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 - 31 juil. 2006 à 13:10
bonjour !
je dois insérer des formules sur une feuille par programmation.
j'ai plusieurs sous totaux. pour chaque sous total je dois d'abord rechercher la ligne ( plutard on pourra insérer des lignes); ça j'ai réussi

une fois que j'ai la ligne, je sais où mettre la formule mais je n'arrive pas à l'insérer.
par exemple mes sous totaox T1 et T2 sont dans la colonne A. soient L1 et L2 tels que L2>L1 leur ligne respective. je veux mettre dans la cellule C&L2 la somme des cellules C&L1+1 à C&L2-1
j'ai fait de la façon suivante: range("C"&L2)="=sum( )"
mon probleme est que dans range ("C"&L2) j'envoie une chaine de caractere "=sum( )" et dans cette chaine de caractere j'ai mes valeurs dans des variables L1 et L2 et du coup ça marche pas.
aidez moi svp
je compte bcp sur vous. merci d'avance
A voir également:

3 réponses

JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 856
27 juil. 2006 à 17:02
Bonjour,

essaie ceci :
Range("C"&L2).Formula = "=SUM(C" & L1+1 & ":C" & L2-1 & ")"

cordialement
4
chercheur92 Messages postés 28 Date d'inscription jeudi 20 juillet 2006 Statut Membre Dernière intervention 29 octobre 2006 1
27 juil. 2006 à 17:45
merci!
ça marche
0
chercheur92 Messages postés 28 Date d'inscription jeudi 20 juillet 2006 Statut Membre Dernière intervention 29 octobre 2006 1
27 juil. 2006 à 20:17
BONJOUR !
j'ai bien inséré la formule dans la cellule, avec la formule de JvDo
Range("C"&L2).Formula = "=SUM(C" & L1+1 & ":C" & L2-1 & ")"
le probleme est que j'ai plusieurs sous totaux sur ma feuille ( au moins 50. je voudrais faire une boucle afin de reduire les lignes de codes. sur la ligne L2 par exemple en plus de la colonne C j'ai un sous total sur E F I J M N O Q.
dans la formule précédente je n'arrive pas à faire varier la colonne C. j'ai voulu utiliser Range("C"&L2).offset(0,j) faire varier j mais j'arrive toujours pas.
je compte sur votre aide.
merci d'avance
1
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 856
31 juil. 2006 à 13:10
Bonjour,

pour tes colonnes, ne t'embête pas avec une boucle, écrit une ligne de code par colonne.

pour les lignes, il faut que tu les aies repérées et le critère de repérage devient critère de traitement.

for ligne =débutligne to fin ligne
if critère_repérage(ligne) then traitement(ligne)
next

cordialement

PS : as-tu pensé à la fonction sous.total dans excel? peut-être n'as-tu pas besoin de VBA pour ce que tu veux faire.
1