Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Reporting a automatisé

coucoud

XLDnaute Nouveau
Bonjour,

Je n'arrive pas a sortir via un TDC le nombre différent de terme de "colonne Z N° OR " onglet " Extraction "
En effet sur l'onglet "TDC", le chiffre sorti est le cumul de lignes.
Je souhaite pouvoir passer directement de l'extraction à l'onglet " Pannes - chariots"

Merci d'avance de votre aide
 

Pièces jointes

  • Reporting .xls
    192 KB · Affichages: 46

chris

XLDnaute Barbatruc
Bonjour
Coucou Dranreb

S l'OR est bien propre à une panne d'un charriot, avec une colonne ajoutée et une somme dans le TCD

A noter que si tu utilises 2010, avec le format xls tu limites de facto les possibilités des TCD
 

Pièces jointes

  • Reporting_XLD.xls
    194.5 KB · Affichages: 38

coucoud

XLDnaute Nouveau
Le resultat n'est pas celui que je souhaiterai. En fait le nombre de panne doit êtres le nombre d'or different. Dans cette essai, pour le chariot F2, le résultat devrait être 1 car trois fois le même OR
 

coucoud

XLDnaute Nouveau
Bonjour
Coucou Dranreb

S l'OR est bien propre à une panne d'un charriot, avec une colonne ajoutée et une somme dans le TCD

A noter que si tu utilises 2010, avec le format xls tu limites de facto les possibilités des TCD
O
Merci de ta réponse mais je n'ai pas saisi ta réponse. En fait l'Or est bien en correspondance avec mon nombre de pannes. Par contre dans l'extraction plusieurs lignes ont le même Or. En fait le resultat que je cherche est bien le nombre d'or different par machine.
 

Dranreb

XLDnaute Barbatruc
Ben il n'y a qu'à ajouter un SsGroup pour l'Or :
VB:
Private Sub Worksheet_Activate()
Dim T(), SgModèle As SsGroup, SgNoSérie As SsGroup, _
  SgNoParc As SsGroup, SgNoOR As SsGroup, L As Long
ReDim T(1 To 500, 1 To 4)
For Each SgModèle In GroupOrg(Feuil2.[A2], 8, 9, 5, 29)
   For Each SgNoSérie In SgModèle.Contenu
      For Each SgNoParc In SgNoSérie.Contenu
         For Each SgNoOR In SgNoParc.Contenu
             L = L + 1
             T(L, 1) = SgModèle.Id
             T(L, 2) = SgNoSérie.Id
             T(L, 3) = SgNoParc.Id
             T(L, 4) = SgNoOR.Count
             Next SgNoOR, SgNoParc, SgNoSérie, SgModèle
Me.[B7].Resize(500, 4).Value = T
End Sub
 
Dernière édition:

chris

XLDnaute Barbatruc
re
As-tu regardé le classeur joint à ma réponse et vérifié les résultats obtenus ?
 

Dranreb

XLDnaute Barbatruc
Je me suis trompé: il faut bien un niveau de plus mais pas besoin d'explrer le dernier SsGroup :
VB:
Private Sub Worksheet_Activate()
Dim T(), SgModèle As SsGroup, SgNoSérie As SsGroup, _
  SgNoParc As SsGroup, L As Long
ReDim T(1 To 500, 1 To 4)
For Each SgModèle In GroupOrg(Feuil2.[A2], 8, 9, 5, 29)
   For Each SgNoSérie In SgModèle.Contenu
      For Each SgNoParc In SgNoSérie.Contenu
          L = L + 1
          T(L, 1) = SgModèle.Id
          T(L, 2) = SgNoSérie.Id
          T(L, 3) = SgNoParc.Id
          T(L, 4) = SgNoParc.Contenu.Count
          Next SgNoParc, SgNoSérie, SgModèle
Me.[B7].Resize(500, 4).Value = T
End Sub
Agaçant de devoir chaque fois corriger à la main l'indentation !
 

coucoud

XLDnaute Nouveau
Merci
 

Discussions similaires

Réponses
12
Affichages
248
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…