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 :

Copier une feuille de calculs issue d'un csv dans une feuille d'un classeur.


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 57
    Points
    57
    Par défaut Copier une feuille de calculs issue d'un csv dans une feuille d'un classeur.
    Bonjour j'utilise le code de da99 pour un projet, je l'ai seulement un peu modifié le voici.
    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
       Sub CopieFichier()
    'Workbooks.Open Filename:=pat
    Workbooks.Open Filename:="H:\DATA\SQL Server Management Studio\Projects\Analytics\googsochaux.csv"
    Cells.Select
    Selection.Copy
    ThisWorkbook.Sheets("temp").Activate
    Cells.Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    'Workbooks(nomFichier).Close SaveChanges:=False
    Workbooks("H:\DATA\SQL Server Management Studio\Projects\Analytics\test.xls").Close SaveChanges:=False
    Range("A1").Select
     
     
    End Sub
    Seulement lorsque que je lançe la macro comme cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Workbook_Open()
     
    CopieFichier
    End Sub
    J'ai l'erreur runtime error 9 subscript out of range dont je ne comprend pas trop la signification bien que j'ai lue le help.
    J'ai excel 2003 en anglais, je suis un peu débutant en macro vba excel.
    J'ai placé copiefichier dans un module de temp. En esperant ne pas etre un boulet en postant ce message.
    Merci

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Remplace tout ça
    Cells.Select
    Selection.Copy
    ThisWorkbook.Sheets("temp").Activate
    Cells.Select
    ActiveSheet.Paste
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells.Copy ThisWorkbook.Sheets("temp").Range("A1")
    Mais pourquoi ne déplaces-tu ou ne copies-tu pas simplement la feuille du csv dans ThisWorkbook ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 99
    Points : 57
    Points
    57
    Par défaut
    Merci beaucoup ça marche, c'est vrai qu'il serait plus simple d'importer mais je ne sais pas comment faire car si j'importe, pourrai-je encore effectuer des macro dessus?


    J'ai regardé pas mal de messages sur le forum dont celui ou il explique comment ouvrir un csv et à chaque fois ça ouvre le csv dans une nouvelle fenetre.

    Peut etre il y a un bout de script à modifier du style local= true??

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Fais ça en enregistrant la macro :
    - Ouverture du csv
    - Sélection de l'onglet -> Clic droit -> Déplacer ou copier (tu valides) -> Sélection du classeur.xls -> Après ou Avant la feuille (tu choisis) et tu valides.
    Tu auras ton code. Tu supprimes tous les selects et, si tu as une difficulté, mets-nous ton code brut, on te le simplifiera.
    C'est comme ça qu'on apprend
    A+ très bientôt

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

Discussions similaires

  1. [XL-2013] Copier des "Tableaux" dans différentes feuilles de calculs
    Par petitnul12 dans le forum Excel
    Réponses: 2
    Dernier message: 26/04/2014, 19h12
  2. Réponses: 13
    Dernier message: 23/05/2013, 20h38
  3. Réponses: 11
    Dernier message: 13/04/2013, 15h25
  4. Réponses: 1
    Dernier message: 31/08/2009, 22h48
  5. Manipuler une text box dans la feuille de calcul excel
    Par nianko dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 18/11/2008, 11h42

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