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 :

boucle next for sur repertoire de fichiers Csv [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Tech Maintenance
    Inscrit en
    Mai 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Tech Maintenance
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2012
    Messages : 13
    Points : 14
    Points
    14
    Par défaut boucle next for sur repertoire de fichiers Csv
    Bonjour a vous et merci
    Si joint 2 macro permettant l’import de donnée dans des tableaux Excel
    La première est une boucle for next qui importe dans des fichiers .mdb
    La deuxième qui n’est pas une boucle (le but de la question) importe des .csv
    Malgré de nombreuses tentatives je n’arrive pas à reproduire lapremiere boucle dans le 2eme exemple
    Question bien bête au demeurant ^^ mais a la quel je ne trouve pas de solution
    Merci a vous
    Boucle Qui marche
    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
    Dim Dossier As Object, fso As Object
    Dim Files As Object
    Dim MaVal
    Sub U21NEXTFOR()
    'ImportVal00
        Workbooks.Open Filename:="C:\AAAA\000TotalFiltre.xlsx"
    'Boucle
      Set fso = CreateObject("Scripting.FileSystemObject") ' Création de l'objet File System Object
      Set Dossier = fso.GetFolder("C:\AAAA\ImportU21") ' Créé l'objet Dossier à partir du chemin definit
      Set Files = Dossier.Files
     
      If Files.Count = 0 Then Exit Sub ' Si aucun fichier dans le dossier, on sort de la procédure
      For Each File In Files ' Sinon pour chaque fichier
        VPath = Dossier.Path & "\" & File.Name    ' Contruit le chemin d'accès
     
    'ouverture Base
        Workbooks.Open Filename:="C:\AAAA\000Base.xlsx"
        Windows("000Base.xlsx").Activate
        Sheets("Feuil1").Select
        Range("C1").Select
    'Import Fichier de C:\AAAA\ImportU21\
           With ActiveSheet.ListObjects.Add(SourceType:=0 _
                , Source:=Array("OLEDB;Provider=Microsoft.ACE.OLEDB.12.0;Password="""";User ID=Admin;Data Source=" & File & ";Mode=Share Deny Write;E" _
                , "xtended Properties="""";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Database Password="""";Jet OLEDB:Engine Ty" _
                , "pe=4;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Da" _
                , "tabase Password="""";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compac" _
                , "t=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;Jet OLEDB:Support Complex Data=False") _
                , Destination:=Range("$C$1")).QueryTable
               .CommandType = xlCmdTable
               .CommandText = Array("urgence")
               .RowNumbers = False
                .FillAdjacentFormulas = False
            .PreserveFormatting = True
            .RefreshOnFileOpen = False
            .BackgroundQuery = True
            .RefreshStyle = xlInsertDeleteCells
            .AdjustColumnWidth = True
            .RefreshPeriod = 0
            .PreserveColumnInfo = True
            .SourceDataFile = Station
            .ListObject.DisplayName = "Tableau_Val__1"
            .Refresh BackgroundQuery:=False
        End With
       Set MaVal = File    
        Application.Run "001Macro.xlsm!U21BBBB"
      Next
       Application.Run "001Macro.xlsm!U21CCCC"
    End Sub
    La boucle a faire
    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
    Sub Import2222()
    'Ouvre Base1 Classeur Neuf et Vide
        Workbooks.Open Filename:="E:\00Taf\000Tortue\Base1.xlsx"
    'Import Mars
        Sheets("Feuil1").Select
        Range("A2").Select
        With ActiveSheet.QueryTables.Add(Connection:= _
            "TEXT;E:\00Taf\000Tortue\Import\Arrivee201203Mars.txt", Destination:=Range("$A$2"))
            .Name = "Arrivee2012Mai"
            .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 = True
            .TextFileSemicolonDelimiter = False
            .TextFileCommaDelimiter = True
            .TextFileSpaceDelimiter = False
            .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
            .TextFileTrailingMinusNumbers = True
            .Refresh BackgroundQuery:=False
        End With
    'Macro Suivante
        Application.Run "MacroTortue2222.xlsm!MiseEnFormeFeuil2222"

  2. #2
    Membre à l'essai
    Homme Profil pro
    Tech Maintenance
    Inscrit en
    Mai 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Tech Maintenance
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2012
    Messages : 13
    Points : 14
    Points
    14
    Par défaut
    Pg Merci quand meme le bon vieux Contol C / V sa marche toujours''

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

Discussions similaires

  1. [Batch] Boucle for sur tous les fichiers sauf certaines extentions
    Par SuperPat dans le forum Scripts/Batch
    Réponses: 4
    Dernier message: 03/01/2014, 00h43
  2. Boucle copier/coller sur tous les fichiers d'un dossier
    Par santadrix dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/10/2012, 10h58
  3. Réponses: 1
    Dernier message: 11/07/2011, 16h01
  4. Cacher des labels avec boucle Next-For
    Par hotsauce91 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 07/05/2009, 11h01
  5. Blocage sur import de fichier CSV
    Par Pokerstar dans le forum Outils
    Réponses: 2
    Dernier message: 29/03/2007, 17h15

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