bonjour,
Voici mon problème :
j'ai réalisé la macro suivante pour ouvrir un fichier texte de plus de 65000 lignes:
Sub test3()
Dim numfichier As Integer
Dim strligne As String
numfichier = FreeFile()
filename = Application.GetOpenFilename("Fichier Texte(*.txt),*.txt" )
If filename = "" Then End
Open filename For Input As numfichier
i = 1 'ligne
j = 1 'colonne
While Not EOF(numfichier)
Line Input #numfichier, strligne
'séparer la ligne lu en deux par l'espace
pos = InStr(strligne, " " )
Cells(i, j).Value = Mid(strligne, 1, pos)
Cells(i, j + 1).Value = Mid(strligne, pos)
' chagement de colonne à la ligne 60000
If i = 60000 Then
j = j + 2
i = 1
End If
i = i + 1
Wend
Close numfichier
End Sub
elle fonctionne très bien pour l'ouverture, mais le problème viens quand je sépare mes lignes à l'aide de l'espace.
Exemple:
sur une ligne du fichier texte j'ai 0,0001 -0,5861 et dans le fichier Excel j'obtiens : 1er colonne 0,0001 et 2e colonne -0,5861.
Par contre, quand j'ai 0,0056 -1,56982, dans le fichier Excel j'obtiens 0,0056 et 156982 sans la virgule.
En gros, dès que je suis supérieur ou égale à 1, il ne tient plus compte de la virgule.
Donc je viens chercher un peu d'aide.
Merci
Nico