Insertion d'une ligne somme dans une base de donnée

  • Initiateur de la discussion Initiateur de la discussion jibs
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

jibs

XLDnaute Nouveau
Bonjour,

Je suis en train de créer un petit outil excel et je rencontre une difficulté.

J'ai une base de donnée avec plusieurs colonnes.
Une des colonnes est triée. En dessous de la base de données, j 'ai déjà créé une macro qui permet de calculer les totaux correspondant aux valeurs de la colonne triée A comme ci dessous.

A B C D

1 10 20 10
1 15 5 12
1 2 2 2
2 4 6 1
2 20 8 8
4 ....
4 ...
4 ....
val1 ....
val1 ....
val2 ....
val2 ....

Total1 27 27 24
Total2 24 14 9
Total3 ...
Total4 ...
Total val1 ...
Total val2 ...


Mon but est d'insérer la valeur du total en dessous de la valeur auquel il correspond dans la colonne triée A. Par exemple insérer Total1 en dessous de tous les 1 dans la colonne triée A.

Voici le code que j'ai déjà commencé . Cela fonctionne pour les deux premiers mais ne peut pas marcher pour les val 1, val2. De plus, si comme dans l'exemple ci-dessus, il n 'y a aucune valeur 3 dans la colonne triée cela ne peut pas marche non plus.


Dim ligne As Integer

ligne = 1

While Sheets(6).Cells(ligne, 11) = 1
ligne = ligne + 1
Wend
Sheets(6).Rows(83 + 4).Copy
Sheets(6).Rows(ligne).Insert shift:=xlDown

ligne = ligne + 1

While Sheets(6).Cells(ligne, 11) = 2
ligne = ligne + 1
Wend
Sheets(6).Rows(83 + 6).Copy
Sheets(6).Rows(ligne).Insert shift:=xlDown

ligne = ligne + 1

While Sheets(6).Cells(ligne, 11) = 3
ligne = ligne + 1
Wend
Sheets(6).Rows(83 + 8).Copy
Sheets(6).Rows(ligne).Insert shift:=xlDown

Merci d'avance pour votre aide. Si jamais je n'ai pas été clair je peux préparer un fichier excel ressemblant au mien pour que ce soit plus explicite.
 
Dernière édition:
Re : Incertion d'une ligne somme dans une base de donnée

Bonjour,
Je suis nul en code, mais ce que tu demandes se fait sans code avec une fonction sous total.
Tu peux même insérer des sous totaux avec le mode plan ce qui te permet de n'afficher que les regroupements
Cordialement
 

Pièces jointes

Dernière édition:
Re : Incertion d'une ligne somme dans une base de donnée

Bonjour,
Merci pour cette réponse rapide.
Le problème est que je dois automatiser la création de ses sous-totaux. Mais c'est exactement le résultat que je souhaite avoir, sachant que j'ai déjà calculé les sous-totaux dans mon code. Par contre j'ai du mal à comprendre comment fonctionne la fonction sous-total et quelle plage il faut sélectionner dans l'exemple que tu m'as envoyé.
 
Re : Incertion d'une ligne somme dans une base de donnée

Bonjour,
en excel 2010 j'ai cliqué sur la cellule B2, puis dans le menu données : sous total.
Ensuite il suffit de cliquer ce qu'on veut.
dans le fichier joint j'ai créé des boutons de formulaires qui lancent 2 macros que j'ai enregistrées
espérant que cela t'aide
 

Pièces jointes

Re : Insertion d'une ligne somme dans une base de donnée

OK merci bien. Je vais essayer de voir si je ne peux pas adapter le code à mon cas. Je vais chercher d'autres sujets du même type pour voir si un code me permet d'automatiser ce que tu m'as montré. Merci beaucoup.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
236
  • Question Question
Power Query Power Query
Réponses
26
Affichages
573
Retour