IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Regroupement de données


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 22
    Par défaut Regroupement de données
    Bonsoir,

    Mon problème est le suivant dans un classeur excel de 13 feuilles (12 pour les mois et une pour la récap) je dois regrouper des données par semaine sur la récap.J'ai donc en préalable sur chaque feuille mensuelle regroupé les semaines du mois (ex janv 2012 semaine 1 à 5), or en février j'ai encore quelques jours de la semaine 5. Le fait d'avoir la même semaine sur deux feuilles me pose problème.
    Mon raisonnement était de lancer un hlookup sur toutes les feuilles afin d'additionner les données de la semaine ciblée, mais dans mes feuilles mensuelles je renseigne au fur et à mesure les données et les dates(afin d'éviter les dimanches et jours fériés). Quand hlookup tombe sur une case avec une erreur ou vide, j'ai une erreur dans le déroulement de la boucle.
    J'ai essayé différentes instructions pour éviter cette erreur, mais rien n'y fait.
    Mes notions de VBA ne me permettent pas d'aller plus loin.
    Si quelqu'un pouvait me mettre sur la bonne voie,afin que je puisse résoudre ce problème.
    Merci d'avance
    Lucien

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonsoir,

    Poste ton code et la disposition de tes données.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 22
    Par défaut
    Bonsoir,
    Merci de l'intérêt que vous portez à ma demande
    Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    Sub donnees()
    For ligne = 3 To 55
     Sheets("Données").Select
     se = Cells(ligne, 1).Value
    For i = 1 To 12
        If i < 10 Then mois = "0" & i
        feuil = "TraficR" & mois
     
     
            For col = 3 To 7
     
            If Worksheets(feuil).Cells(35, col).Value <= se Then
            Set tableau = Worksheets(feuil).Range("C35:G43")
            CE1 = Application.WorksheetFunction.HLookup(se, tableau, 2, False)
            CE = CE + CE1
            Else:
     
            End If
            Next col
    Next
    Next
    End Sub
    Cordialement

  4. #4
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Pas sûr que ce soit juste. Pourrais-tu donner les résultats de la feuille Données pour la semaine 1 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Sub test()
        Dim Sh As Worksheet, c As Range
        With Sheets("Données")
            For Each Sh In Worksheets
                If Sh.Name <> "Données" Then
                    For Each c In Sh.[D5:R31]
                        sem = Application.WeekNum(Sh.Cells(c.Row, 3))
                        If IsNumeric(c.Value) Then
                            .[A2].Offset(sem, c.Column - 3) = .[A2].Offset(sem, c.Column - 2) + c.Value
                        End If
                    Next c
                End If
            Next Sh
        End With
    End Sub

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 22
    Par défaut Merci
    Un grand merci Daniel, votre code marche à merveille

    Cordialement

    Lucien

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 14
    Dernier message: 10/07/2006, 10h58
  2. pb regroupement de données dans requette sql
    Par skyman272 dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 15/02/2006, 21h42
  3. [MySQL] regrouper les données sous un format différent
    Par Erakis dans le forum Langage SQL
    Réponses: 5
    Dernier message: 17/01/2006, 15h11
  4. [VBA-E] Regroupement de données
    Par beurnoir dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 04/11/2005, 10h16
  5. regroupement de données
    Par PlaylistBoy dans le forum Access
    Réponses: 2
    Dernier message: 11/10/2005, 12h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo