culturebeach
XLDnaute Nouveau
Bonjour a tous,
Je travaille actuellement sur un logiciel de calcul de contraintes dans les structures (ANSYS) qui me sort les resultats sous la forme de fichiers textes.
Je recupere ces fichiers dans un dossier et mon But, c'est d'arreter le copier/coller dans excel.
1) J'aimerais donc que tous mes fichiers soient copies sous excel dans un seul worksheet
2) J'ai ensuite un probleme car seule une partie de ces fichiers m'interesse (environ les 200 premieres lignes)
J'ai trouve la macro ci dessous en cherchant sur le forum.. mais cela me sors tous les fichiers a l'affilade dans une meme colonne... or les fichiers font des milliers de lignes donc cela bloque en bas (Max de ligne est atteint)
Sub Import_Text()
Dim Directory As String, File As String, Temp As String
Dim NumRow As Long, NumCol As Integer
Dim FF As Integer, I As Integer
Directory = "C:\test\"
File = Dir(Directory & "*.txt")
NumRow = ActiveCell.Row
NumCol = ActiveCell.Column
With ActiveSheet
FF = FreeFile
Do While File <> ""
Open Directory & File For Input As #FF
Do While Not EOF(FF)
Line Input #FF, Temp
Table = Split(Temp, vbTab)
For I = 0 To UBound(Table)
.Cells(NumRow, NumCol + I) = Table(I)
Next
NumRow = NumRow + 1
Loop
Close #FF
File = Dir
Loop
End With
End Sub
Etant debutant VBA, je ne comprends pas tout le code au dessus, Je suis ouvert a toute idee !!
Merci
Je travaille actuellement sur un logiciel de calcul de contraintes dans les structures (ANSYS) qui me sort les resultats sous la forme de fichiers textes.
Je recupere ces fichiers dans un dossier et mon But, c'est d'arreter le copier/coller dans excel.
1) J'aimerais donc que tous mes fichiers soient copies sous excel dans un seul worksheet
2) J'ai ensuite un probleme car seule une partie de ces fichiers m'interesse (environ les 200 premieres lignes)
J'ai trouve la macro ci dessous en cherchant sur le forum.. mais cela me sors tous les fichiers a l'affilade dans une meme colonne... or les fichiers font des milliers de lignes donc cela bloque en bas (Max de ligne est atteint)
Sub Import_Text()
Dim Directory As String, File As String, Temp As String
Dim NumRow As Long, NumCol As Integer
Dim FF As Integer, I As Integer
Directory = "C:\test\"
File = Dir(Directory & "*.txt")
NumRow = ActiveCell.Row
NumCol = ActiveCell.Column
With ActiveSheet
FF = FreeFile
Do While File <> ""
Open Directory & File For Input As #FF
Do While Not EOF(FF)
Line Input #FF, Temp
Table = Split(Temp, vbTab)
For I = 0 To UBound(Table)
.Cells(NumRow, NumCol + I) = Table(I)
Next
NumRow = NumRow + 1
Loop
Close #FF
File = Dir
Loop
End With
End Sub
Etant debutant VBA, je ne comprends pas tout le code au dessus, Je suis ouvert a toute idee !!
Merci