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 :

Remplir un tableau à partir d'un autre [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Février 2012
    Messages : 91
    Par défaut Remplir un tableau à partir d'un autre
    Bonjour le forum,

    Voilà j'ai beau chercher à trouver une solution pour mon cas mais je n'ai rien trouvé donc je me retourne vers vous pour me donner un coup de main.

    J'ai un tableau dans une feuille qui contient plusieurs cellules j'aimerais transférer quelques données de ce tableau vers un autre qui est sur la même feuille selon la valeur et la date !

    Comme c'est dur à expliquer je joint un exemple !
    Dans la feuilles 2 il y'a le resultat souhaité on voit très bien que la date est la valeur sont les conditions pour remplir ce tableau, la colonne C contient des ref uniques pour chaque ligne!

    Toutes suggestions seront les bienvenues !

    Merci d'avance
    Fichiers attachés Fichiers attachés

  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
    Bonjour,

    Ce n'est pas très clair pour moi. Si Feuil2 contient le résultat escompté, où se trouvent les données initiales ? Donne un exemple.

  3. #3
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Février 2012
    Messages : 91
    Par défaut
    Bonjour
    Les données initiales se trouvent dans la "feuil1" le resultat doit apparaitre dans la "feuil1" aussi ! pour les exemples c'est dans la "feuil2" que ca se trouve !!!
    Merci

  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
    Bonjour,

    Les données initiales se trouvent dans la "feuil1"
    Il n'y a pas de données dans Feuil1, il n'y a que des entêtes (et une date).

  5. #5
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Février 2012
    Messages : 91
    Par défaut
    c'est la colonne V c'est là ou je veux remplir les données !! les données initiales sont dans la colonne C:L

    voilà un debut de solution qu'on m'a proposé jusque là tout fonctionne sauf que j'arrive pas a trier et faire la séparation des opérations de chaque mois c'est a dire celle du mois de mars en face et les séparer du mois suivant ...
    Fichiers attachés Fichiers attachés

  6. #6
    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
    Bonjour,

    Mets la macro suivante dans un module standard :

    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
    Option Base 1
    Sub test()
        Dim c As Range, Tabl(12) As String, Ctr As Double
        Dim Ligne As Long, LigneDeb As Long, LigneCred As Long
        Ligne = 2
        For Each c In Range([E4], Cells(Rows.Count, 5).End(xlUp))
            Tabl(Month(c.Value)) = "X"
        Next c
        For i = 1 To 12
            Ctr = 0
            If Tabl(i) <> "" Then
                Ligne = Ligne + 2
                Cells(Ligne, 26) = DateSerial(2012, i, 1)
                Cells(Ligne, 26).NumberFormat = "mmm-yyyy"
                LigneDeb = Ligne
                LigneCred = Ligne
                For Each c In Range([E4], Cells(Rows.Count, 5).End(xlUp))
                    If DateSerial(Year(c.Value), Month(c.Value), 1) = Cells(Ligne, 26) Then
                        If c.Offset(, 2) > 0 Then
                            Cells(LigneCred, "AA") = Cells(c.Row, 3)
                            Cells(LigneCred, "AB") = Cells(c.Row, 5)
                            Cells(LigneCred, "AC") = Cells(c.Row, 8)
                            Cells(LigneCred, "AD") = Cells(c.Row, 7)
                            Ctr = Ctr + Cells(c.Row, 7)
                            LigneCred = LigneCred + 1
                        Else
                            Cells(LigneDeb, "V") = Cells(c.Row, 3)
                            Cells(LigneDeb, "W") = Cells(c.Row, 5)
                            Cells(LigneDeb, "X") = Cells(c.Row, 8)
                            Cells(LigneDeb, "Y") = Cells(c.Row, 7)
                            Ctr = Ctr + Cells(c.Row, 7)
                            LigneDeb = LigneDeb + 1
                        End If
                    End If
                Next c
                Cells(Ligne + 1, 26) = Ctr
                Cells(Ligne + 1, 26).NumberFormat = "General"
                Ligne = Application.Max(LigneCred, LigneDeb)
            End If
        Next i
    End Sub
    PS. Au cas où les dates d'échéance sont sur plusieurs années, il faudra modifier la macro.

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

Discussions similaires

  1. [XL-2010] Remplir un tableau à partir d'un autre tableau Excel
    Par khelilo dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 03/12/2012, 10h14
  2. [XL-2007] Remplir un tableau à partir d'une liste dans un autre onglet
    Par maymou27 dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 20/06/2012, 14h34
  3. [XL-2007] [Débutant] Remplir un tableau à partir d’un autre tableau
    Par DerJul dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 05/07/2011, 11h37
  4. [TP] Remplir un tableau à partir des données d'un autre tableau
    Par The future scientist dans le forum Turbo Pascal
    Réponses: 6
    Dernier message: 27/05/2007, 17h31
  5. [Excel] Créer un tableau à partir d'un autre
    Par Ouguiya dans le forum Excel
    Réponses: 3
    Dernier message: 30/03/2006, 10h34

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