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 :

Tableau - macro insertion de ligne [XL-2003]


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
    Juillet 2012
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 53
    Par défaut Tableau - macro insertion de ligne
    Bonjour à tous,

    Je vous présente le problème: Un tableau A est mis à jour quotidiennement.
    Ce tableau contient une colonne "nom" de 8 noms possibles (il peut y avoir plusieurs fois le même nom) ainsi que des colonnes "quantités, "types" etc.

    Je souhaite créer une macro dans chacun de 8 autres classeurs qui en fonction du nom de la colonne "nom" du tableau A m'insére une ligne, si le nom correspond, avec les valeurs des "quantités" et "types" correspondantes.

    Je ne sais pas si j'ai été assez clair mais si quelqu'un peut me filer un coup de main je suis preneur!

    * Merci *

  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,

    Les données sont-elles classées, ou est-ce que tu ajoutes la ligne en bas du tableau ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 53
    Par défaut
    Si on ajoute la ligne en bas du tableau c'est très bien!

  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,

    Mets cette macro dans le module de la feuille. Tu dois changer le nom des fichiers dans la variable Classeurs. Aussi, j'ai supposé que tous les classeurs sont dans le même dossier. Je mets en pièce jointe le classeur source et 1 classeur cible.

    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
    Private Sub Worksheet_Change(ByVal Target As Range)
        Dim Wbk As Workbook, Ligne As Long, Classeurs
        Classeurs = Array("HankMoody Cible1.xls", "HankMoody Cible2.xls", _
            "HankMoody Cible3.xls", "HankMoody Cible4.xls", "HankMoody Cible5.xls", _
            "HankMoody Cible6.xls", "HankMoody Cible7.xls", "HankMoody Cible8.xls")
        If Target.Column > 3 Then Exit Sub
        If Application.CountA(Cells(Target.Row, 1).Resize(, 3)) = 3 Then
            For Each Item In Classeurs
                Set Wbk = Workbooks.Open(ThisWorkbook.Path & "\" & Item)
                With Wbk.Sheets("Feuil1")
                    Ligne = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
                    .Cells(Ligne, 1).Resize(, 3).Value = Cells(Target.Row, 1).Resize(, 3).Value
                    Wbk.Close True
                End With
            Next
        End If
    End Sub
    Fichiers attachés Fichiers attachés

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2012
    Messages : 53
    Par défaut
    Merci Daniel.C.
    Cependant j'ai effectué un test avec les fichiers source/cible que tu as joint et lorsque que je rajoute une ligne dans le fichier source et lance la macro, elle ne se rajoute pas dans le tableau cible.

  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
    Je n'ai pas été assez précis. Tu ouvres le fichier source; quand tu a rempli les 3 cellules des colonnes A, B et C, la macro se déclenche automatiquement; elle ouvre, met à jour et ferme successivement les 8 fichiers cibles.

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

Discussions similaires

  1. Macro insertion de lignes
    Par lucieaup dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 12/08/2013, 15h56
  2. [PPT-2003] tableau lié - insertion de lignes
    Par vchico1 dans le forum Powerpoint
    Réponses: 0
    Dernier message: 22/09/2010, 17h26
  3. [WD-2003] Macro copie/colle tableau - Macro ajout de ligne
    Par Graineur dans le forum VBA Word
    Réponses: 17
    Dernier message: 02/08/2010, 09h32
  4. [OpenOffice] Macro insertion de ligne et copier coller calc
    Par Adamantium dans le forum OpenOffice & LibreOffice
    Réponses: 1
    Dernier message: 10/07/2008, 15h20
  5. Macro: Insertion de ligne par condition
    Par Monteninho dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/08/2007, 14h48

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