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 :

Transfert automatique des données de deux fichiers excel


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Septembre 2016
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2016
    Messages : 71
    Par défaut Transfert automatique des données de deux fichiers excel
    Bonjour,
    J'aimerais vraiment que vous m'aidiez. En fait j'ai deux fichiers Excel et j'aimerais récupérer les données du premier fichier en l'occurrence ma feuille1 et le transférer vers le deuxième fichier de manière automatique.

    NB: je ne veux pas récupérer toutes les données de la feuille 1 du premier fichier mais juste les données dont le nom d'une cellule commence par SM
    merci d'avance

  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
    Tu scrutes tous les noms de ta feuille 1 avec une boucle For Each sur la propriété Names de ta Worksheet.
    https://msdn.microsoft.com/fr-fr/lib.../ff841127.aspx

    Avec un test If tu vérifies que les noms de ces... Noms commencent par "SM" en appliquant la fonction Right() à la propriété Name de l'objet Name.
    https://msdn.microsoft.com/fr-fr/lib.../ff840686.aspx

    Si c'est le cas, tu copies la données vers sa destination.

    Avec le peu d'information que tu donnes, difficile d'en dire plus.

  3. #3
    Membre confirmé
    Femme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Septembre 2016
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2016
    Messages : 71
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub test()
    'Workbooks("feuille 1 SM .xlsm").Worksheets("feuille1").Cells     
     'Workbooks.Open Filename:="\Travail\feuille 1source.xlsm"
     'Workbooks("feuille 1 source.xlsm").Worksheets("feuile1").Cells.Copy _
         'Workbooks("feuille 1 SM.xlsm").Worksheets("feuille1").Range("D = SM")
      'Workbooks("feuille 1source.xlsm").Close  
     'End Sub
    J'ai essayé ça mais ça efface toutes les données de destination

  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
    Deux questions à poser :
    Premièrement, as-tu réellement testé la macro que tu présentes ? Parce qu'il y a plusieurs éléments qui me semble incompatibles avec une exécution.
    Deuxièmement, as-tu lu mon message précédent ? Parce que je ne vois dans ton code aucun des éléments que je t'ai indiqué, j'ai donc l'impression d'avoir brasser du vent.

  5. #5
    Membre confirmé
    Femme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Septembre 2016
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2016
    Messages : 71
    Par défaut
    mon code m'affiche un message d'erreur.Si j'ai lu ton message précédent.Je suis entrain d'appliquer ta méthode

    Je n'arrive pas appliquer la fonction right().En faite j'ai une colonne appelé domaine qui contient les cellules SM et RH et je veux seulement faire le transfert des données qui ont le nom SM vers un autre fichier excel.

  6. #6
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 974
    Par défaut
    Bonjour
    je sais pas si ça va t'aider
    voila un code pour copier les données de la colonne "B" de la feuil1 si la colonne "A" de cette meme feuille est égal à "OUI" et enregistre par ordre les données ds la colonne A de la feuille 2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub CopierSiOui()
       Application.ScreenUpdating = False
       With Sheets("feuil1")
       j = 1
        For i = 1 To .[A65000].End(xlUp).Row
          If Left(.Range("A" & i), 3) Like "OUI" Then
          Sheets("feuil2").Range("A" & j) = Sheets("feuil1").Range("B" & i)
          j = j + 1
          End If
        Next i
       End With
    End Sub

  7. #7
    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 mia.555 Voir le message
    Je n'arrive pas appliquer la fonction right().
    C'est étonnant étant donné qu'il s'agit d'une fonction extrêmement simple qui est identique à la fonction DROITE() de Excel.
    https://msdn.microsoft.com/fr-fr/lib.../gg278801.aspx

    En faite j'ai une colonne appelé domaine qui contient les cellules SM et RH et je veux seulement faire le transfert des données qui ont le nom SM vers un autre fichier excel.
    Qu'est-ce que veut dire par "nom" ? Est-ce que tu utilises ce terme au sens qu'Excel lui donne ?

Discussions similaires

  1. [XL-2007] transfert automatique de données entre 2 fichiers Excel
    Par intellli dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 13/02/2015, 12h14
  2. Inscrire des données dans deux fichiers excel a partir d'un userform
    Par creunch dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 06/09/2010, 11h52
  3. copier des données d'un Fichier Excel à un a autre automatiquement
    Par meuah dans le forum Macros et VBA Excel
    Réponses: 36
    Dernier message: 21/05/2008, 10h45
  4. Réponses: 8
    Dernier message: 31/10/2007, 09h10
  5. Réponses: 6
    Dernier message: 08/12/2006, 13h07

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