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 :

Ouvrir des fichiers depuis une macro :"instruction incorrecte à l'extérieur d'une procédure"


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2009
    Messages
    134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2009
    Messages : 134
    Points : 61
    Points
    61
    Par défaut Ouvrir des fichiers depuis une macro :"instruction incorrecte à l'extérieur d'une procédure"
    Bonjour à tous,

    je souhaite, dans une macro, copier les données de 6 fichiers différents (ne comprenant qu'une feuille chacun) dans six feuilles de mon fichier actuel (regrouper six fichiers en un seul quoi).

    J'ai donc créé une macro en effectuant manuellement les opérations, mais quand je veux la relancer ensuite j'ai le message d'erreur suivant :

    "Erreur de compilation :
    instruction incorrecte à l'extérieur d'une procédure"

    qui me surligne la ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Workbooks.Open Filename:= _
            "C:\Documents and Settings\mondoc1.xls"
    A quoi cela est-il dû ?

    Par ailleurs, avez-vous une méthode plus simple pour faire ce que je veux faire, c'est à dire regrouper 6 fichiers en un sans avoir à ouvrir les six fichiers (les six fichiers auront toujours le même nom et le même nombre de colonnes, par contre leur nombre de lignes est différent).

    Merci d'avance.

  2. #2
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Bonjour,
    à tout hasard, as-tu bien mis cette ligne dans ta procédure (question bête, mais on ne sait jamais), envoies plus de code pour voir plus clair.

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2009
    Messages
    134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2009
    Messages : 134
    Points : 61
    Points
    61
    Par défaut
    Voilà mon 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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
     
    Sub importer()
    '
    ' importer Macro
    ' Macro enregistrée le 06/04/2010 par Stephane
    '
     
    '
        Workbooks.Open Filename:= _
            "C:\Documents and Settings\mondoc1.xls"
        Workbooks.Open Filename:= _
            "C:\Documents and Settings\mondoc2.xls"
        Workbooks.Open Filename:= _
            "C:\Documents and Settings\mondoc3.xls"
        Workbooks.Open Filename:= _
            "C:\Documents and Settings\mondoc4.xls"
        Workbooks.Open Filename:= _
            "C:\Documents and Settings\mondoc5.xls"
        Workbooks.Open Filename:= _
            "C:\Documents and Settings\mondoc6.xls"
     
        Windows("mondoc1.xls").Activate
        Range("A1").Select
        Range(Selection, Selection.End(xlToRight)).Select
        Range(Selection, Selection.End(xlDown)).Select
        Selection.Copy
        Windows("analyse_resultats3.xls").Activate
        Range("A1").Select
        ActiveSheet.Paste
     
        Windows("mondoc2.xls").Activate
        Range("A1").Select
        Range(Selection, Selection.End(xlToRight)).Select
        Range(Selection, Selection.End(xlDown)).Select
        Application.CutCopyMode = False
        Selection.Copy
        Windows("analyse_resultats3.xls").Activate
        Sheets("donnees2").Select
        Range("A1").Select
        ActiveSheet.Paste
     
        Windows("mondoc3.xls").Activate
        Range("A1").Select
        Range(Selection, Selection.End(xlToRight)).Select
        Range(Selection, Selection.End(xlDown)).Select
        Application.CutCopyMode = False
        Selection.Copy
        Windows("analyse_resultats3.xls").Activate
        Sheets("donnees3").Select
        Range("A1").Select
        ActiveSheet.Paste
     
        Windows("mondoc4.xls").Activate
        Range("A1").Select
        Range(Selection, Selection.End(xlToRight)).Select
        Range(Selection, Selection.End(xlDown)).Select
        Application.CutCopyMode = False
        Selection.Copy
        Windows("analyse_resultats3.xls").Activate
        Sheets("donnees4").Select
        Range("A1").Select
        ActiveSheet.Paste
     
        Windows("mondoc5.xls.xls").Activate
        Range("A1").Select
        Range(Selection, Selection.End(xlToRight)).Select
        Range(Selection, Selection.End(xlDown)).Select
        Application.CutCopyMode = False
        Selection.Copy
        Windows("analyse_resultats3.xls").Activate
        Sheets("donnees5").Select
        Range("A1").Select
        ActiveSheet.Paste
     
        Windows("mondoc6.xls").Activate
        Range("A1").Select
        Range(Selection, Selection.End(xlToRight)).Select
        Range(Selection, Selection.End(xlDown)).Select
        Application.CutCopyMode = False
        Selection.Copy
        Windows("analyse_resultats3.xls").Activate
        Sheets("donnees6").Select
        Range("A1").Select
        ActiveSheet.Paste
    End Sub

  4. #4
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Si tu as fait ton code manuellement, peut-être que le chemin indiqué est mauvais,
    tu devrais faire un test par l'enregistreur de macro et voir si il stipule un chemin différent.
    je suis sur ex2007 et vista, pour mes documents perso, exemple de chemin
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    C:\Users\Dominique\Documents.....
    A voir .....sans garantie

  5. #5
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2009
    Messages
    134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2009
    Messages : 134
    Points : 61
    Points
    61
    Par défaut
    Non j'ai utilisé l'enregistreur de macro...

    N'y a-t-il pas un moyen (sans l'enregistreur) d'importer mes données sans ouvrir le fichier ?

  6. #6
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Si, mais il faut passer par une connection, là c'est un peu plus de boulot, tu dois pouvoir trouver ton bonheur sur le site en cherchant un peu, beaucoup de discussions traitent de ce sujet, perso je ne l'ai pas encore fait, je préfère ouvrir, prendre mes données et fermer

    bon courage

Discussions similaires

  1. Réponses: 20
    Dernier message: 30/09/2009, 10h15
  2. Télécharger des fichiers depuis une URL
    Par nicox33 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 15/01/2008, 18h33
  3. Réponses: 0
    Dernier message: 19/09/2007, 12h53
  4. Xemacs - ouvrir des fichiers depuis l'exporateur dans une même frame
    Par GhostNemo dans le forum Applications et environnements graphiques
    Réponses: 5
    Dernier message: 07/05/2007, 00h50
  5. Problème pour ouvrir des fichiers .exe et .jar via une page html
    Par coyaote dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 15/02/2007, 12h28

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