Ouvrir plusieurs fichiers ?
vince_nus
-
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
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
A voir également:
- Ouvrir plusieurs fichiers ?
- Comment ouvrir un fichier epub ? - Guide
- Ouvrir fichier .bin - Guide
- Ouvrir fichier .dat - Guide
- Comment ouvrir un fichier docx ? - Guide
- Comment ouvrir un fichier 7z - Guide
1 réponse
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.
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.