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 données entre fichiers


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2017
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2017
    Messages : 40
    Par défaut Transfert données entre fichiers
    Bonjour à tous ,


    Je dispose d'un fichier Excel "fichier1" avec toutes mes données dans la feuille "information". Dans un autre fichier Excel "fichier2" , j'ai créé un bouton sur la feuille "feuil2".
    A l'action du bouton j'aimerai récupérer les informations de la feuille "information" pour les mettre dans la feuille 'feuil2'. Avec mon code actuel, j'ai une erreur qui apparaît : erreur 9.
    L'erreur apparaît au niveau de mon premier Workbooks ligne : 21


    Merci d'avance

    Voici mon code actuel :

    Code VBA : 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
    Sub Feuil2_Bouton1_Cliquer()
     
     
      Dim Chemin As String
      Dim Fichier As String
     
    Chemin = "C:\xxxxxxxxx\"
    Fichier = " fichier1.xlsm"
     
     
      With Sheets("information")
     
     
        ligne = 6
     
            For n = 6 To Range("R65536").End(xlUp).Row
                x = Split(Range("R" & n), Chr(10))
     
     
            For m = LBound(x) To UBound(x)
                Workbooks("fichier2").Sheets("Feuil2").Range("A" & ligne) = x(m)
     
     
            For col = 1 To 3
                 Workbooks("fichier2").Sheets("Feuil2").Cells(ligne, col) = Cells(n, col)
            Next col
     
     
            ligne = ligne + 1
     
            Next m
            Next n
     
     
        End With
     
     
    End Sub

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 184
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    En plus du numéro d'erreur, tu as un message "l'indice n'appartient pas à la sélection" qui est très explicite.
    Soit le classeur nommé fichier2 n'est pas présent dans la collection des classeurs ouvert (Workbooks) soit la feuille nommée Feuil2 n'existe pas dans le dit classeur.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2017
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2017
    Messages : 40
    Par défaut
    Bonjour,

    J'ai bien vérifié, tout est bien nommé et les feuilles existent bien.
    Je viens de refaire un test, cette fois-ci il m'affiche l' "erreur 9 : l'indice n'appartient pas à la sélection" au niveau de la ligne 11 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     With Sheets("Suivi Modifications")
    je ne comprend pas

  4. #4
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 184
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    je ne peux pas t'apporter plus. Erreur 9 signifie que l'objet n'existe pas dans la collection.
    Cependant je constate que tu n'as pas rattaché l'objet Range de la ligne 17 avec la feuille Suivi Modifications définit dans le bloc With soit (voir le point en rouge
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    With Sheets("information")
      For n = 6 To .Range("R65536").End(xlUp).Row
    Il y a peut-être d'autres erreurs mais je n'ai pas été examiné ton code complètement

    Pourquoi utiliser une boucle pour effectuer une copie qui sauf erreur de ma part n'as pas de critères de sélection donc la méthode Copy avec l'argument Destination devrait suffire
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

Discussions similaires

  1. [PowerShell] Transfert de donnés entre fichier CSV
    Par DarKZoNe dans le forum Scripts/Batch
    Réponses: 0
    Dernier message: 24/01/2013, 20h16
  2. Transfert Données entre Activity
    Par Invité dans le forum Android
    Réponses: 2
    Dernier message: 05/04/2012, 21h14
  3. Récupération de données entre fichiers Excel
    Par SlySylvain dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 09/01/2009, 14h35
  4. Réponses: 6
    Dernier message: 20/11/2008, 21h26
  5. [MySQL] Récupération de données entre fichiers et base de données
    Par PascR dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 21/12/2007, 11h44

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