XL 2010 Condenser les données d'un tableau

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 !

FCMLE44

XLDnaute Impliqué
Bonjour

Etape 2 de mon projet

Les onglets se créant automatiquement en fonction des données de la feuille DSN, je souhaite, pour chaque onglet créé condenser les données obtenues.

Feuille TC :
En ligne 4 colonne AN, je souhaite condenser les données se trouvant en colonne AD à AK (cf exemple fichier joint).

Lors de la mise à jour de chaque onglet via macro Balaye1, il se mettrait à jour automatiquement

Cordialement
 

Pièces jointes

Je n'en a plus besoin à priori. Continuez à renseigner la table pour les autres colonnes aussi.
Faites en sorte que tout soit comme dans la feuille DSN: en texte (sauf le numéro de colonne dans le récapitulatif, bien sûr)
 
Dernière édition:
Yes j'ai compris. Ca marche.
Par contre j'ai un souci quand je supprime les onglets hors table et récap, et que je me mets des données réelles, il beugue
VB:
With ThisWorkbook.Worksheets: For F = FSiret1.Index To .Count: .Item(F).Name = .Item(F).CodeName: Next F: End With
F = FSiret1.Index - 1
???
 
Il y aurait néanmoins possibilité de spécifier deux numéros de colonnes:
Dans les déclaration ajoutez un petit tableau, ColsRéc()
À l'initialisation du dico :
VB:
For LRc = 1 To UBound(TRc, 1)
   DicRécap(TRc(LRc, 1) & "|" & TRc(LRc, 2) & "|" & TRc(LRc, 3)) = Array(TRc(LRc, 4), TRc(LRc, 5)): Next LRc
À la ventilation :
VB:
            CléRécap = Détail(30) & "|" & Détail(31) & "|" & Détail(33)
            If DicRécap.Exists(CléRécap) Then
               ColsRéc = DicRécap(CléRécap)
               C = ColsRéc(0): If C > 1 Then TRc(LRc, C) = TRc(LRc, C) + Détail(38)
               C = ColsRéc(1): If C > 1 Then TRc(LRc, C) = TRc(LRc, C) + Détail(38)
               End If
 
Lorsque je mets ce code
VB:
 CléRécap = Détail(30) & "|" & Détail(31) & "|" & Détail(33)
            If DicRécap.Exists(CléRécap) Then
               ColsRéc = DicRécap(CléRécap)
               C = ColsRéc(0): If C > 1 Then TRc(LRc, C) = TRc(LRc, C) + Détail(38)
               C = ColsRéc(1): If C > 1 Then TRc(LRc, C) = TRc(LRc, C) + Détail(38)
               End If

Le système bugge.
Erreur de compilation
Variable non définie
 
J'ai créé cette macro avec le générateur de macros pour mon format
VB:
Sub Format()
'
' Format Macro
'
 
'
    Range("A1:A4,B1:H1,B4:H4").Select
    Range("H4").Activate
    Selection.Font.Bold = True
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorAccent4
        .TintAndShade = 0.599993896298105
        .PatternTintAndShade = 0
    End With
    Range("B3:H3,E2").Select
    Range("E2").Activate
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorDark2
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorDark1
        .TintAndShade = -4.99893185216834E-02
        .PatternTintAndShade = 0
    End With
    Range("A1:H4").Select
    Selection.Borders(xlDiagonalDown).LineStyle = xlNone
    Selection.Borders(xlDiagonalUp).LineStyle = xlNone
    With Selection.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeRight)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlInsideVertical)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlInsideHorizontal)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
    Range("A1").Select
    With Selection.Font
        .Name = "Calibri"
        .Size = 14
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ThemeColor = xlThemeColorLight1
        .TintAndShade = 0
        .ThemeFont = xlThemeFontMinor
    End With
End Sub

Lorsque je le mets avant la boucle, j'obtiens un débogage
 
- 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
418
Réponses
5
Affichages
382
Retour