XL 2013 Double sous total et reprise du 1er ST sur le ST 2éme colonne

mab77

XLDnaute Nouveau
Bonjour,

J'ai un (sûrement) petit problème que je vous soumets :

J'ai un tableau avec 3 colonnes ( en PJ) dans lequel je voudrais obtenir un sous total à chaque changement de variable sur la première ET la deuxième colonne. Dans mon tableau joint, j'ai mis les onglets "données de départ" et les différents résultats obtenus et attendus (et même un résultat rêvé mais bon...).

J'espère que vous pourrez m'aider car ce tableau fait normalement 1 500 lignes et je dois copier/coller la cellule de sous total 1 sur chacune des lignes de sous total 2.

Merci d'avance!!
 

Pièces jointes

  • Fichier test forum.xlsx
    19.9 KB · Affichages: 20
  • Fichier test forum.xlsx
    19.9 KB · Affichages: 64

JHA

XLDnaute Barbatruc
Re : Double sous total et reprise du 1er ST sur le ST 2éme colonne

Bonsoir à tous,

Un TCD peut il faire l'affaire?

JHA
 

Pièces jointes

  • Fichier test forum.xlsx
    24.8 KB · Affichages: 17
  • Fichier test forum.xlsx
    24.8 KB · Affichages: 16

Jocelyn

XLDnaute Barbatruc
Re : Double sous total et reprise du 1er ST sur le ST 2éme colonne

Bonjour le Forum,
Bonjour mab77, JHA :),

En utilisant cette formule matricielle en colonne H2 à étirer vers le bas

Code:
=INDEX($A$2:$A$19&$B$2:$B$19;PETITE.VALEUR(SI(NB.SI($G$1:G1;$A$2:$A$19&$B$2:$B$19)=0;LIGNE($A$2:$A$19)-1);1))

on evite les colonnes E et F dans le très bon fichier posté par JHA

Cordialement
 

laetitia90

XLDnaute Barbatruc
Re : Double sous total et reprise du 1er ST sur le ST 2éme colonne

bonsoir tous :)
une version macro ?? copie sur la meme feuile en e2

Code:
Sub es()
Dim t(), i As Long, m As Object, j As Long, c As Byte, z
  Set m = CreateObject("Scripting.Dictionary")
  t = Feuil1.Range("a2:c" & Feuil1.Cells(Rows.Count, 1).End(3).Row)
   For i = 1 To UBound(t)
   z = t(i, 1) & t(i, 2)
   If m.Exists(z) Then
   t(m(z), 3) = t(m(z), 3) + t(i, 3)
   Else
   x = x + 1
   t(x, 1) = "Total  " & t(i, 1)
   t(x, 2) = "Total  " & t(i, 2)
   t(x, 3) = t(i, 3): m(z) = x
   End If
   Next i
  Feuil1.[e2].Resize(x, 3) = t
End Sub
 

mab77

XLDnaute Nouveau
Re : Double sous total et reprise du 1er ST sur le ST 2éme colonne

Vous êtes merveilleux!!

La macro fonctionne à merveille!

Et je n'avais pas pensé à concaténer le matricule et la rubrique, c'est très bien vu JHA!!

Milles merci en tout cas, vous me faites gagner un temps fou!!
 

Discussions similaires

Statistiques des forums

Discussions
314 208
Messages
2 107 290
Membres
109 796
dernier inscrit
aelgar