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 un fichier dont le nom est en variable


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 80
    Points : 49
    Points
    49
    Par défaut Ouvrir un fichier dont le nom est en variable
    Bonjour,
    Je dois importer un fichier csv, pour ce faire, j'ai fait ce petit script qui fonctionne bien. Mon problème est que le nom de fichier est en dur dans le code. Je souhaite pouvoir le choisir. J'ai donc mis en variable le nom de fichier avec:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      Dim MonFichier
      MonFichier = Application.GetOpenFilename()
    Et remplacer le nom réel du fichier par MonFichier. Malheureusement cela ne fonctionne pas. Cela bloque sur With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & MonFichier, Destination:=Range("BASE!$A$1"))

    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
     
    Sub import()
    '
    ' Copie fichier CSV 322976_animateurs_Service_regional.csv
    '
     
    '
    Sub import()
    '
    ' Copie fichier CSV 322976_animateurs_Service_regional.csv
    '
     
    '
     Dim MonFichier
      MonFichier = Application.GetOpenFilename()
     
     
        With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & MonFichier, Destination:=Range("BASE!$A$1"))
    '
    '''     With ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\Users\PASCAL\Desktop\322976_animateurs_Service_regional.csv", Destination:=Range("BASE!$A$1"))
    '
           .Name = "DonnéesExternes_1"
            .FieldNames = True
            .RowNumbers = False
            .FillAdjacentFormulas = False
            .PreserveFormatting = True
            .RefreshOnFileOpen = False
            .RefreshStyle = xlInsertDeleteCells
            .SavePassword = False
            .SaveData = True
            .AdjustColumnWidth = True
            .RefreshPeriod = 0
            .TextFilePromptOnRefresh = False
            .TextFilePlatform = 1252
            .TextFileStartRow = 1
            .TextFileParseType = xlDelimited
            .TextFileTextQualifier = xlTextQualifierDoubleQuote
            .TextFileConsecutiveDelimiter = False
            .TextFileTabDelimiter = False
            .TextFileSemicolonDelimiter = False
            .TextFileCommaDelimiter = False
            .TextFileSpaceDelimiter = False
            .TextFileOtherDelimiter = "\"
            .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, _
            1, 1, 1, 1)
            .TextFileTrailingMinusNumbers = True
            .Refresh BackgroundQuery:=False
        End With
    End Sub
    Auriez vous une idée, merci pour votre aide.

  2. #2
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Pourquoi avoir utilisé des requêtes pour ouvrir ton fichier ?
    Il serait plus simple d'utiliser un simple OpenText.
    https://msdn.microsoft.com/fr-fr/vba...t-method-excel
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

Discussions similaires

  1. [PHP 5.5] fopen() refuse d'ouvrir un fichier dont le nom est long
    Par rivoire888 dans le forum Langage
    Réponses: 4
    Dernier message: 15/09/2015, 13h29
  2. Ouvrir un fichier dont le nom est contenu dans un autre
    Par camillerufu dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 28/04/2015, 16h50
  3. [Batch] Ouvrir un fichier dont le nom est partiellement connu.
    Par TGV6773 dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 03/02/2010, 18h24
  4. [VBA-E]ouvrir un fichier dont le nom est determiné par sa date de création
    Par olivertwist dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 17/04/2007, 17h29
  5. Réponses: 4
    Dernier message: 18/08/2006, 07h57

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