| ||||||||
Petite astucienne | Bonjour[hello
J'ai le tableau suivant sur excel
A / B / C / D
fournisseur / montant / reglemnt/
voiture / 25 / 25 /
voiture / 30 / 25 /
cahier / 10 / 15 /
cahier / 15 / 10 /
j'applique un sous-total "à chaque changement de fournisseur faire somme montant et somme reglement
Question: ] avec une macro comment mettre en D la formule (C-B) uniquement au niveau des lignes "TOTAL FOURNISSEUR" ?
Merci à tous en esperant que mon explication est claire
Modifié par la feline le 17/03/2006 23:02 | |||||||
Publicité | ||||||||
Astucien ![]() | salut
je pense que tu veux B-C (sinon D-C en colonne D ça fait une réference circulaire)
donc :
en colonne D à partir de D2 mettre =TROUVE("Somme";A2) et tirer la formule vers le bas puis cacher la colonne
en colonne E mettre à partir de E2 =ESTERR(D2) et tirer la formule vers le bas puis cacher la colonne
en colonne F mettre à partir de F2 =SI(E2=FAUX;B2-C2;"") et tire la formule vers le bas
tu devrais alors ne voir apparaitre ce que tu souhaites | |||||||
![]() | bonsoir,
Y en a encore un qu'a piqué ma boule de cristal !
[pleurer]
usul ? je t'ai vu !
hmmm...
A+
| |||||||
Petite astucienne | Salut
Merci pour cette reponse . seulement je touve VRAI en E donc j'ai remplacé Vrai par FAUX dans la formule. Cela ne resous pas mon probleme car la formule C-B est au niveau de toutes les lignes
Merci
usularrakis a écrit :
salut je pense que tu veux B-C (sinon D-C en colonne D ça fait une réference circulaire) donc : en colonne D à partir de D2 mettre =TROUVE("Somme";A2) et tirer la formule vers le bas puis cacher la colonne en colonne E mettre à partir de E2 =ESTERR(D2) et tirer la formule vers le bas puis cacher la colonne en colonne F mettre à partir de F2 =SI(E2=FAUX;B2-C2;"") et tire la formule vers le bas tu devrais alors ne voir apparaitre ce que tu souhaites | |||||||
Astucien ![]() | Salut galopin : désolé pour ta boule de cristal mais t'inquiète je te la rends dès que possible [hello]
pour la feline : ce que je t'ai indiqué fonctionne voir les images sur cjoint :
[url]http://cjoint.com/?dtluL20FVW[/url]avec les formules affichées
[url]http://cjoint.com/?dtlu7aBiOh[/url]avec les résultats
ou alors la boule de cristal de galoçpin n'est plus ce qu'elle était [bigsmile][bigsmile][bigsmile] | |||||||
![]() | bonsoir,
Ce genre de question assez vague ne m'inspire guère car on peut y passer la semaine comme une fleur !
Une des questions en suspens étant de savoir si on attend une aide à la saisie ou une modification d'un tableau existant...
Je me suis d'ailleurs un moment demandé si une simple formule :
=SI(A1="TOTAL FOURNISSEUR";C1-B1;"")
... ne suffisait pas ?
En l'absence d'indication plus précise, j'ai quand même gratté sur une des possibilités.
La macro suivante réagit aux entrées sur la colonne A (à partir de la ligne 3)
Si l'entrée est différente de la ligne précédente, un sous-total est inséré.
Macro à coller dans le module de la feuille en question (Alt+F11)[code]Private Sub Worksheet_Change(ByVal Target As Range)
Dim iR%, Z$
On Error GoTo GESTERR
If Target.Column = 1 Then
iR = Target.Row
Z1 = Cells(iR - 1, 1).Value
Y = Z1 <> "S-Total"
If Y And Target.Value <> Z1 Then
Z2 = Cells(iR - 1, 2).Value
Z3 = Cells(iR - 1, 3).Value
While Z1 = Cells(iR - (k + 2), 1).Value
Z2 = Z2 + Cells(iR - (k + 2), 2).Value
Z3 = Z3 + Cells(iR - (k + 2), 3).Value
k = k + 1
Wend
Application.EnableEvents = False
Rows(iR).Insert
Cells(iR, 1) = "S-Total " & Z1
Range("B" & iR).FormulaLocal = "=SOMME(B" & iR - (k + 1) & ":B" & iR - 1 & ")"
Range("C" & iR).FormulaLocal = "=SOMME(C" & iR - (k + 1) & ":C" & iR - 1 & ")"
Range("D" & iR).FormulaLocal = "=(C" & iR & "-B" & iR & ")"
Application.EnableEvents = True
Cells(iR + 1, 2).Select
End If
End If
Exit Sub
GESTERR:
End Sub[/code]
A+ | |||||||
Astucien ![]() | salut
je ne me suis pas complètement immergé dans la question, mais est-ce que l'option sous-totaux ne correspondrait pas à la demande ? De plus c'est entièrement automatique. Juste la formule à réappliquer en cas d'insertion mais par macro c'est pas un problème .
[img]http://img511.imageshack.us/img511/1007/soustotaux8cu.jpg[/img]
Je m'en sert beaucoup !
Cordialement. | |||||||
![]() | Oui c'était une autre des options qui allait très bien avec une formule SI :
=SI(GAUCHE(A1;5)="Total";C1-B1;"")
...
A+ Modifié par galopin01 le 19/03/2006 21:11 | |||||||
Petite astucienne | merci à tous pour vos reponses
usularrakis, 1000cbr, galopin01 | |||||||
|
Les bons plans du moment PC Astuces | Tous les Bons Plans | |||||||||||||||
|