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

VBA Access Discussion :

Ouvrir fichier csv via Excel


Sujet :

VBA Access

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 582
    Par défaut Ouvrir fichier csv via Excel
    Bonjour,
    Je souhaiterais ouvrir un fichier csv via excel pour accèder à mes colonnes/lignes.
    J'ai un fichier csv, si je l'ouvre via Excel, le ";" permet de séparer et chaque champ est bien dans une cellule différente.
    Si je passe par VBA :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set wbExcel = appExcel.Workbooks.Open("monFichier.csv")
    Et bien , il ne sépare plus les colonnes et tout se retrouve dans la 1ère colonne...
    J'ai essayé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set wbExcel = appExcel.Workbooks.OpenText(FileName:="Z:\Commandes\Cdes à faire\TestCde1.csv", DataType:=xlDelimited, semicolon:=True)
    Mais j'ai l'erreur "impossible de lire la propriété OpentText
    Comment faire pour qu'il interprète correctement le fichier csv?
    Merci

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 357
    Par défaut
    Bonjour,

    Ci-joint un petit bout de code à adapter :

    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
    Sub ImportCSV(ByVal strPath As String, strSheetName As String)
    'importe un fichier csv et stocke le resultat dans la feuille strSheetName
     
    Application.EnableEvents = False
    Application.Calculation = xlCalculationManual
     
    With ThisWorkbook
     
        'importe les nouvelles donnees
            With .Sheets(strSheetName).QueryTables.Add(Connection:= _
                "TEXT;" & strPath _
                , Destination:=Sheets(strSheetName).Range("A5"))
                .Name = "ImportCSV"
                .FieldNames = True
                .RowNumbers = False
                .FillAdjacentFormulas = False
                .PreserveFormatting = True
                .RefreshOnFileOpen = False
                .RefreshStyle = xlInsertDeleteCells
                .SavePassword = False
                .SaveData = True
                .AdjustColumnWidth = False
                .RefreshPeriod = 0
                .TextFilePromptOnRefresh = False
                .TextFilePlatform = 850
                .TextFileStartRow = 1
                .TextFileParseType = xlDelimited
                .TextFileTextQualifier = xlTextQualifierDoubleQuote
                .TextFileConsecutiveDelimiter = False
                .TextFileTabDelimiter = False
     
                'definit le format de separation en fonction des parametres regionaux du PC
                If GetLocale(LOCALE_SDECIMAL) = "," Then
                    .TextFileSemicolonDelimiter = True
                    .TextFileCommaDelimiter = False
                Else
                    .TextFileSemicolonDelimiter = False
                    .TextFileCommaDelimiter = True
                End If
     
                .TextFileSpaceDelimiter = False
                .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1)
                .TextFileTrailingMinusNumbers = True
                .Refresh BackgroundQuery:=False
            End With
     
    End With
     
    Application.EnableEvents = True
    Application.Calculation = xlCalculationAutomatic
     
    End Sub

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 582
    Par défaut
    Je suis dans Access, et je veux aller lire des données dans un fichier csv sans importer ces données...

Discussions similaires

  1. Réponses: 8
    Dernier message: 28/10/2014, 16h14
  2. Ouvrir un fichier csv dans excel
    Par judavid dans le forum VBScript
    Réponses: 5
    Dernier message: 17/03/2009, 19h01
  3. Ouvrir un fichier csv dans excel via access
    Par NELAIN dans le forum VBA Access
    Réponses: 3
    Dernier message: 17/02/2009, 15h15
  4. ouvrir un fichier .csv via VB
    Par modjo dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 18/12/2008, 14h01
  5. Réponses: 1
    Dernier message: 26/03/2007, 10h47

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