Copier-coller en chaîne .txt dans Excel (VBA)
Bonjour à tous !
Je ne suis pas trop bon en VBA, mais je sais qui'il est possible d'ouvrir plusieurs fichier .txt et de les copier-coller dans un fichier excel.
Il y a une personne qui connait la technique ?
Étapes:
1- activer la macro.
2- Copier coller le premier fichier .txt dans excel
3- copier coller le prochain fichier .txt a la suite de lautre fichier excel.
4- Ainsi de suite.
J'ai au dessus de 1000 fichiers .txt a ouvrir et copier-coller, j'utilise un keyboard et mouse recorder pour le moment. mais un ami m'a dit que c'était possible en vba et que cela serait pas mal plus rapide.
Si vous avez un lien internet qui me permet de faire moi même le code. C'est aussi une possibilité
Merci a tous.
Thomas B.
J'ai trouvé ce code, mais il ne semble pas fonctionner.
Option Explicit
Const sPath = "C:\Temp\" 'remember end backslash
Const delim = "," 'comma delimited text file - EDIT
'Const delim = vbTab 'for TAB delimited text files
Sub ImportMultipleTextFiles()
Dim wb As Workbook
Dim sFile As String
Dim inputRow As Long
RefreshSheet
On Error Resume Next
sFile = Dir(sPath & "*.txt")
Do Until sFile = ""
inputRow = Sheets("Temp").Range("A" & Rows.Count).End(xlUp).Row + 1
'open the text file
'format=6 denotes a text file
Set wb = Workbooks.Open(Filename:=sPath & sFile, _
Format:=6, _
Delimiter:=delim)
'copy and paste
wb.Sheets(1).Range("A1").CurrentRegion.Copy _
Destination:=ThisWorkbook.Sheets("Temp").Range("A" & inputRow)
wb.Close SaveChanges:=False
'get next text file
sFile = Dir()
Loop
Set wb = Nothing
End Sub
Sub RefreshSheet()
'delete old sheet and add a new one
On Error Resume Next
Application.DisplayAlerts = False
Sheets("Temp").Delete
Application.DisplayAlerts = True
Worksheets.Add
ActiveSheet.Name = "Temp"
On Error GoTo 0
End Sub