[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
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
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:
- [vba excel] insertion des formules dans les c
- Liste déroulante excel - Guide
- Formule excel si et - Guide
- Formule somme excel colonne - Guide
- Formule excel moyenne - Guide
- Formules excel de base - Guide
3 réponses
JvDo
Messages postés
1978
Date d'inscription
mercredi 27 juillet 2005
Statut
Membre
Dernière intervention
28 septembre 2020
858
27 juil. 2006 à 17:02
27 juil. 2006 à 17:02
Bonjour,
essaie ceci :
Range("C"&L2).Formula = "=SUM(C" & L1+1 & ":C" & L2-1 & ")"
cordialement
essaie ceci :
Range("C"&L2).Formula = "=SUM(C" & L1+1 & ":C" & L2-1 & ")"
cordialement
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
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
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
JvDo
Messages postés
1978
Date d'inscription
mercredi 27 juillet 2005
Statut
Membre
Dernière intervention
28 septembre 2020
858
31 juil. 2006 à 13:10
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.
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.
27 juil. 2006 à 17:45
ça marche