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 :

Macro pour importer Feuil1 de Livre1 (excel) vers Feuil2 de Livre2(excel) (VBA, excel)


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juin 2014
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2014
    Messages : 21
    Par défaut Macro pour importer Feuil1 de Livre1 (excel) vers Feuil2 de Livre2(excel) (VBA, excel)
    Salut,
    J'ai deux fichiers (workbooks) excel. Dans le fichier1 il y a la Feuil1, dans le Fichier2 j'ai la Feuil2.
    J'ai mis un bouton dans la Feuil2. chaque fois que j'ai Click sur le bouton, j’aimerai importer toutes les données de la Feuil1, c'est-à-dire, tout la Feuil1.
    Je suis en train de créer une macro pour le faire mais j'arrive pas. Est ce que quelqu'un pourrai me donner une idée de comme faire? . Merci

    Voici le 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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    Sub test()
    ' Get customer workbook...
    Dim customerBook As Workbook
    Dim filter As String
    Dim caption As String
    Dim customerFilename As String
    Dim customerWorkbook As Workbook
    Dim targetWorkbook As Workbook
     
    ' make weak assumption that active workbook is the target
    Set targetWorkbook = Application.ActiveWorkbook
     
    ' get the customer workbook
    filter = "Text files (*.xlsx),*.xlsx"
    caption = "Please Select an input file "
    customerFilename = Application.GetOpenFilename(filter, , caption)
     
    Set customerWorkbook = Application.Workbooks.Open(customerFilename)
     
     
    ' copy data from customer to target workbook
    Dim targetSheet As Worksheet
    Set targetSheet = targetWorkbook.Worksheets(1)
    Dim sourceSheet As Worksheet
    Set sourceSheet = customerWorkbook.Worksheets(1)
     
    'Workbooks("PGT.xlsx").Worksheets(1).Copy After:=Workbooks("Classeur1.xlsx").ActiveSheet
     
     
    ' Close customer workbook
    'customerWorkbook.Close
    End Sub
    Merci

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    "J'arrive pas", c'est un peu vague pour expliquer ton problème.
    Peux-tu détailler ce qui se passe et qui ne te convient pas.

    Tu as essayé de remplacer ton ActiveSheet par un Worksheets(1) ?

  3. #3
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juin 2014
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2014
    Messages : 21
    Par défaut
    Salut Menhir,
    Oui, effectivement j'ai changé Worksheets(1) par ActiveSheet et ça marche toujours pas.
    En fait, j'obtient les données de la Worksheet(1) mais ils sont affichées dans la WorkSheet(2). En plus, les données sont transmis sans format.

    Merci

  4. #4
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Je crois qu'il va falloir que tu détaille plus ton problème. Parce que là, je ne comprends pas.

    Déjà, dans ton code, il y a :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    customerFilename = Application.GetOpenFilename(filter, , caption)
     
    Set customerWorkbook = Application.Workbooks.Open(customerFilename)
    Ca voudrait dire que tu ouvres deux fois ton fichier source, ce qui semble inutile.
    Tu peux enlever la seconde ligne.

    Quelques détail aussi :
    La plupart de tes "Application" sont inutiles. Tu peux les retirer, ça marchera aussi bien.
    Les Dim se placent plutôt en début de code.

    Ton fichier semble être un brouillon de multiples fois modifié et que tu n'as pas pris la peine de nettoyer avant de l'afficher ici.

    Si dans ton targetWorkbook il y a déjà une Feuil1, je ne vois pas comment tu pourrais copier une autre feuille dans ce fichier avec le même nom.

    Je pense que tu n'as pas expliqué tous les éléments de ton problème et il est donc difficile de t'aider.

  5. #5
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juin 2014
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2014
    Messages : 21
    Par défaut
    Salut,
    En fait, je suis pas de tout un expert en Macros, ça fait deux semaine que j'ai commencé à faire de macros. De coup, j'ai eu du mal pour adapter le code que j'ai mis plutôt. Donc, j'aimerai savoir si vous avez un idée plus claire à me conseiller.

    Merci

  6. #6
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par alonet Voir le message
    Donc, j'aimerai savoir si vous avez un idée plus claire à me conseiller.
    Si tu ne réponds pas aux questions posées et que tu n'expliques pas plus clairement ton problème, il est peu probable que tu puisses obtenir de l'aide, même avec la meilleure volonté du monde.

  7. #7
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juin 2014
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2014
    Messages : 21
    Par défaut
    En fait, à mon avis, le problème vient de :
    Workbooks("PGT.xlsx").Worksheets(1).Copy After:=Workbooks("Classeur1.xlsx").ActiveSheet
    Je crois que COpy After envoi les données vers une autre Worksheet.

    Merci

Discussions similaires

  1. Macro pour importer un rapport BO sur Excel
    Par NikoTosic dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/05/2014, 10h04
  2. [XL-2007] Macro pour exporter des données sur WORD vers Excel (version 2007)
    Par krokos55 dans le forum Macros et VBA Excel
    Réponses: 26
    Dernier message: 31/10/2012, 13h10
  3. Créer macro pour importer fichier texte
    Par stpaul04 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 01/03/2011, 17h52
  4. [WD-2007] Macro pour importer Excel vers Word
    Par philippef dans le forum VBA Word
    Réponses: 0
    Dernier message: 24/11/2010, 23h44
  5. éélaboration d'une macro pour importation de donnée dans excel 2003
    Par wuging dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 17/09/2010, 08h33

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