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 :

transférer un fichier CSV fermé vers un classeur Excel fermé


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    Bonjour,

    Je cherche à transférer un fichier CSV fermé vers un classeur Excel fermé.

    J’ai trouvé du code sur cette FAQ : http://excel.developpez.com/sources/...ransfertAccess
    pour transférer un fichier CSV vers une nouvelle table Access.

    Je l’ai adapté.

    Mais, j’ai un message d’erreur :
    Erreur d’exécution -2147467259
    La requête doit être construite à partir d’au moins une table ou une requête source.
    Je joins le fichier macro et le fichier destination.xls avec le code dans le corps du message .
    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
    Sub tranfertCSV_Vers_ClassXL()
        'Transfére un fichier CSV vers un classeur XL fermé
        'depuis une macro Excel.
        '
        'Nécessite d'activer la référence
        '"Microsoft ActiveX Data Objects x.x Library
        '
     
        Dim XLCn As ADODB.Connection
        Dim XLRst As ADODB.Recordset
        Dim Csv_CN As New ADODB.Connection
        Dim Csv_Rst As New ADODB.Recordset
        Dim DossierCSV As String, FichXL As String
        Dim FichCSV As String, Feuil As String
        Dim nbEnr As Long
     
        'Répertoire du fichier CSV
        DossierCSV = "C:\"
        'Nom du fichier CSV à transfèrer
        FichCSV = "source.csv"
        'Chemin et nom de la base XL
        FichXL = "C:\destination.xls"
        'Nom de la nouvelle Table XL
        Feuil = "client"
     
     
        'Connection au fichier CSV
        Set Csv_CN = New ADODB.Connection
     
        With Csv_CN
            .Provider = "Microsoft.Jet.OLEDB.4.0"
            .ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" _
                & DossierCSV & ";Extended Properties='text;FMT=Delimited'"
            .Open
        End With
     
        'Requète dans le fichier CSV
        Csv_Rst.Open "SELECT * FROM " & FichCSV, Csv_CN, _
            adOpenStatic, adLockOptimistic
     
        'Connection à la base de données XL
        Set XLCn = New ADODB.Connection
     
        With XLCn
            .Provider = "Microsoft.Jet.OLEDB.4.0"
            .ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" _
                & FichXL & ";Extended Properties=""Excel 12.0;"""
            .Open
     
        End With
     
        'Transfert les données de CSV vers Excel
        Csv_CN.Execute "SELECT * INTO [Excel 12.0;" & _
            "Database=" & FichXL & "].[" & Feuil & "] FROM [" & FichCSV & "]", nbEnr
     
     
        XLCn.Close
        Csv_Rst.Close
        Csv_CN.Close
        Set XLRst = Nothing
        Set XLCn = Nothing
        Set Csv_Rst = Nothing
        Set Csv_CN = Nothing
    End Sub
    Les données dans le fichier CSV ont exactement la même structure que dans le fichier de destination.

    Merci pour votre aide


    Cordialement,

    O
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Extraire une feuille d'un classeur fermé vers un classeur ouvert
    Par Kutoh dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 01/08/2013, 11h23
  2. Réponses: 15
    Dernier message: 23/05/2013, 19h33
  3. Transférer un fichier CSV vers une nouvelle table Access
    Par SilkyRoad dans le forum Contribuez
    Réponses: 0
    Dernier message: 29/12/2011, 10h57
  4. Transférer des fichiers de AIX vers Windows
    Par SINASOFT dans le forum AIX
    Réponses: 3
    Dernier message: 09/04/2010, 09h58
  5. Copier des données de classeurs Excel fermés vers un classeur ouvert
    Par gwen-al dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 11/03/2008, 17h00

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