Comment faire un sous-total
arpette
-
Arpette -
Arpette -
Bonsoir le forum,
J'ai une macro en VB et je souhaiterais faire des sous-totaux :
j'ai des articles communs (triés) en colonne B, j'ai des chiffres en colonne C. J'aimerais faire un sous total à chaque changement de code et ne garder que la ligne sous total.
Merci de votre aide
J'ai une macro en VB et je souhaiterais faire des sous-totaux :
j'ai des articles communs (triés) en colonne B, j'ai des chiffres en colonne C. J'aimerais faire un sous total à chaque changement de code et ne garder que la ligne sous total.
Merci de votre aide
A voir également:
- Comment faire un sous-total
- Total uninstall - Télécharger - Divers Utilitaires
- Total video converter - Télécharger - Conversion & Codecs
- Formule total excel - Guide
- Total bug caf - Guide
- Total adblock avis - Forum Consommation & Internet
6 réponses
Bonjour Raymond et merci de me répondre, oui je connais mais le problème et c'est pourquoi je veux mettre le code dans ma macro, c'est que je souhaite ne garder que les lignes où il ya les sous totaux.
Merci de votre aide.
Merci de votre aide.
Bonjour,
soustot = ["SumProduct((B2:B9= ""article1"") * 1, C2:C9)"]
Fabrique tes adresses de plage par concaténation.
eric
soustot = ["SumProduct((B2:B9= ""article1"") * 1, C2:C9)"]
Fabrique tes adresses de plage par concaténation.
eric
Bonjour Eric, et merci de me répondre. Cela ne fonctionne pas, j'ai pense qu'il faut que je me posistionne sur la dernière ligne de la collone B et je boucle en remontant. Si les articles sont identiques, j'en fais la somme des valeurs de la colonne E et je supprime les lignes comptées et garde la dernière avec le total et je remonte et ainsi de suite. Le problème je ne sais pas comment l'écrire en VB.
Merci de ton aide.
Merci de ton aide.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour Raymond, ta réponse me convient, mais ce n"est pas moi qui utilise le fichier et je veux que ça soit simple pour l' utilisateur ( juste un bouton ). Mais jai trouver la solution que voici :
Application.ScreenUpdating = False
j = 1
While Cells(j + 1, 1) <> ""
i = 0
While UCase(Cells(j + i + 1, 2)) = UCase(Cells(j + i + 2, 2))
i = i + 1
Wend
If i > 0 Then
Cells(j + i + 1, 3) = WorksheetFunction.Sum(Range(Cells(j + 1, 3), Cells(j + i + 1, 3)))
Range(Cells(j + 1, 1), Cells(j + i, 1)).EntireRow.Delete
End If
j = j + 1
Wend
Application.ScreenUpdating = False
Application.ScreenUpdating = False
j = 1
While Cells(j + 1, 1) <> ""
i = 0
While UCase(Cells(j + i + 1, 2)) = UCase(Cells(j + i + 2, 2))
i = i + 1
Wend
If i > 0 Then
Cells(j + i + 1, 3) = WorksheetFunction.Sum(Range(Cells(j + 1, 3), Cells(j + i + 1, 3)))
Range(Cells(j + 1, 1), Cells(j + i, 1)).EntireRow.Delete
End If
j = j + 1
Wend
Application.ScreenUpdating = False