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 :

Somme de données extraite et cycliques [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2012
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2012
    Messages : 31
    Par défaut Somme de données extraite et cycliques
    bonjour

    avec le codes ci dessous
    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    Sub extraction _ somme()
     
    Dim X As Integer
    Dim y As Integer
    Dim n As Integer
    Dim p As Integer
    Dim l As Integer
    Dim b As Integer
    Dim k As Integer
    Dim q As Integer
    Dim i As Integer
    Dim j As Integer
    Dim f As Integer
    Dim h As Integer
     
     
     
     
     
     
     Windows("TDB 2013 2014.xlsm").Activate
     Workbooks("TDB 2013 2014.xlsm").Sheets.Add
      ActiveSheet.Name = "temporaire3"
     
     Sheets("temporaire").Select
     
     
     
             For X = 9 To 186 Step 15
     
            y = y + 1
            Range("B" & X & ":C" & X).Copy Sheets("temporaire3").Range("A" & y)
     
            Next X
     
        Sheets("temporaire").Select
     
             For n = 11 To 186 Step 15
     
            p = p + 1
            Range("B" & n & ":C" & n).Copy Sheets("temporaire3").Range("C" & p)
     
            Next n
     
     
     
         Sheets("temporaire").Select
     
             For l = 12 To 186 Step 15
     
            b = b + 1
            Range("B" & l & ":C" & l).Copy Sheets("temporaire3").Range("E" & b)
     
            Next l
     
     
            Sheets("temporaire").Select
     
             For k = 8 To 186 Step 12
     
            q = q + 1
            Range("J" & k & ":K" & k).Copy Sheets("temporaire3").Range("G" & q)
     
            Next k
     
     
            Sheets("temporaire").Select
     
     
             For i = 10 To 186 Step 12
     
            j = j + 1
            Range("j" & i & ":K" & i).Copy Sheets("temporaire3").Range("I" & j)
     
            Next i
     
     
            Sheets("temporaire").Select
     
             For f = 11 To 186 Step 12
     
            h = h + 1
            Range("j" & f & ":K" & f).Copy Sheets("temporaire3").Range("K" & h)
     
            Next f
     
     
    end sub
    n’étant pas un pro des structures en boucle j'ai du déclarer plusieurs variables
    j'arrives à extraire les données sur des feuilles excel
    il se range d'après le code en colonne A B C D E F G H I J K L
    Ce qui m'interesse à la fin c'est de faire la somme des colonnes toujours selon le rang des lignes des colonnes
    A+C+E+G+I+K ensuite B+D+F+H+J+L

    c'est à dire A1+C1+E1+G1.....A2+C2+E2+G2+I2.....

    Donc une dernière boucle à faire pour cette somme
    qui doit se loger dans les colonne suivante M et N ensuite je les transpose ( à ce niveau je peux me débrouiller avec l'editeur)

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Par défaut
    Bonjour,

    Une piste mais je n'ai absolument pas testé. A voir en fin de boucle car pour en avoir une seule, X est augmenté ou diminué :
    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    Sub extraction_somme()
     
        Dim X As Integer
        Dim y As Integer
     
        Windows("TDB 2013 2014.xlsm").Activate
        Workbooks("TDB 2013 2014.xlsm").Sheets.Add
        ActiveSheet.Name = "temporaire3"
     
        With Sheets("temporaire")
     
            For X = 9 To 186 Step 15
     
               y = y + 1
               .Range("B" & X & ":C" & X).Copy Sheets("temporaire3").Range("A" & y)
               .Range("B" & X + 2 & ":C" & X + 2).Copy Sheets("temporaire3").Range("C" & y)
               .Range("B" & X + 3 & ":C" & X + 3).Copy Sheets("temporaire3").Range("E" & y)
               .Range("J" & X - 1 & ":K" & X - 1).Copy Sheets("temporaire3").Range("G" & y)
     
            Next X
     
            For X = 11 To 186 Step 12
     
               y = y + 1
               .Range("J" & X + 1 & ":K" & X + 1).Copy Sheets("temporaire3").Range("I" & y)
               .Range("j" & X + 2 & ":K" & X + 2).Copy Sheets("temporaire3").Range("K" & y)
     
            Next X
     
        End With
     
        With Sheets("temporaire3")
     
            For X = 1 To .Cells(Rows.Count, 1).End(xlUp).Row
     
                .Cells(X, 13) = Application.WorksheetFunction.Sum(.Cells(X, 1), .Cells(X, 3), .Cells(X, 5), .Cells(X, 7), .Cells(X, 9), .Cells(X, 11))
                .Cells(X, 14) = Application.WorksheetFunction.Sum(.Cells(X, 2), .Cells(X, 4), .Cells(X, 6), .Cells(X, 8), .Cells(X, 10), .Cells(X, 12))
     
            Next X
     
        End With
     
    End Sub
    Hervé.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2012
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2012
    Messages : 31
    Par défaut
    bonjour j'ai testé le code mais comme il n'ya que des données dans les 4 première cellule en ligne A1 à A4 qui
    corresponds au mois de l'années alors que dans les cellule à partir de B d .. Il ya des données sur les 12 premères lignes

    du coup les somme s'arret au 4 première ligne pour les deux

    du coup j'ai adapté le code comme ci
    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
    23
    24
    25
    26
    With Sheets("temporaire3")
     
            For X = 1 To 12
     
                .Cells(X, 13) = Application.WorksheetFunction.Sum(.Cells(X, 1), .Cells(X, 3), .Cells(X, 5), .Cells(X, 7), .Cells(X, 9), .Cells(X, 11))
     
                 Next X
                 End With
     
     
     
                With Sheets("temporaire3")
     
                 For y = 1 To 12
     
                .Cells(y, 14) = Application.WorksheetFunction.Sum(.Cells(y, 2), .Cells(y, 4), .Cells(y, 6), .Cells(y, 8), .Cells(X, 10), .Cells(y, 12))
                Next y
     
            End With
     
     ça me ramène zero là il rien mais bon ça donne le resultat que je veux.
     
     
     
     
    End Sub

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

Discussions similaires

  1. Réponses: 28
    Dernier message: 08/10/2009, 18h10
  2. Rechercher les nombres dont la somme est donnée
    Par TMuet dans le forum Intelligence artificielle
    Réponses: 2
    Dernier message: 17/08/2009, 17h17
  3. [ODBC] 2 listes déroulantes contenant des données extraites de la base
    Par narama87 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 22/04/2009, 23h44
  4. Réponses: 4
    Dernier message: 27/01/2009, 13h34
  5. Comment convertir les données extraite d'une jtable ?
    Par jouidos dans le forum Langage
    Réponses: 2
    Dernier message: 11/12/2006, 09h35

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