Ouvrir plusieurs fichiers ?

vince_nus -  
 vince_nus -
bonjour à tous

j'aurai une question pour ouvrir plusieurs fichiers avec des noms différents les uns des autres (windows XP, vba Excel 2007). J'utilise un code que j'ai trouvé mais j'ai fais des modifs, et il m'ouvre toujours le même fichier !!!
au départ, le code ouvre tous les fichiers un par un, qui se trouvent tous dans le même dossier.

comment joindre un fichier pour vous montrez le code?

merci

1 réponse

  1. vince_nus
     
    Bonjour à tous (--> vba excel 2007, XP)

    j'ai vraiment besoin d'aide, Voilà le code que j'ai récupéré. Il fonctionne mais j'ai disons un problème de boucles, le code m'ouvre tout le temps le même fichier !!??

    Public NomFichier As Variant --> là il me déclare les variables
    Public LeChemin As Variant
    Public LeDossier As Variant
    Public LeSousDossier1 As Variant
    Public LeSousDossier2 As Variant
    Public LeFichier As Variant
    Public Erreur As Variant

    Sub AffecterVariables() --> là, le code me récup dans un onglet, les différents noms de dossier où se trouvent les fichiers (ceux que je dois ouvrir sont dans LeSousDossier2
    LeChemin = Sheets("DATA").Cells(2, 2).Value
    LeDossier = Sheets("DATA").Cells(2, 3).Value
    LeSousDossier1 = Sheets("DATA").Cells(2, 4).Value
    LeSousDossier2 = Sheets("DATA").Cells(2, 5).Value
    LeFichier = ThisWorkbook.Name
    End Sub

    Sub ConversionXlssEnXls()
    AffecterVariables
    Application.ScreenUpdating = False
    Dim MonRange As Range
    Dim fs, f, f1, fc, s
    Set MonRange = Range("A1")
    LeFichier = ThisWorkbook.Name
    Sheets("Explication listing MMT DHP M88").Select
    Cells(1, 1).Select

    specdossier = LeChemin & "\" & LeDossier & "\" & LeSousDossier2
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set f = fs.GetFolder(specdossier)
    Set fc = f.Files
    For Each f1 In fc
    s = s & f1.Name
    s = s & vbCrLf

    For aa = 11 To 176

    'ouvre le fichier de relevés MMT

    NomFichier = f1.Name
    ChDir _
    LeChemin & "\" & LeDossier & "\" & LeSousDossier2
    Workbooks.OpenText Filename:= _
    f1 _

    'Windows(LeFichier).Activate
    'Cells(RowIndex, 2).Select
    'Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
    False, Transpose:=True

    Windows(NomFichier).Activate
    'fermer le fichier Excel sans sauvegarder
    Application.CutCopyMode = False
    ActiveWorkbook.Close savechanges:=False

    aa = aa + 4

    Next
    Next

    Application.ScreenUpdating = True

    End Sub

    le dernier Sub ConversionXlssEnXls() doit me permettre d'ouvrir tout les fichiers xls dans LeSousDossier2, pour coller des données d'une colonne dans un fichier principal(LeFichier, dans la macro). j'ai retirer pour l'instant cette partie de copier-coller qui fonctionne. Ma variable aa me permet juste de me décaller sur la droite, pour coller les infos de chaque fichiers dans une colonne. aa fontionne mais quand je fermer le 1er fichier qui a été ouvert il m'ouvre encore le même et plusieurs fois de suite avant de passer au suivant.

    Merci à tous pour votre aide. si vous avez un code plus simple pas de problème.
    0