Pb d'écriture de chaine dans des cellules à cause de 4 décimales

tibofo -  
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Dans Excel, Je lis un fichier txt tabulé et je mets les valeur dans chaque colonne.

Mon problème est que certaine valeur sont mal affichée dans excel.
Exemple, j'ai dans mon txt :
poisson tab tab tab 20,0000 tab 5,53 tab

Une fois, dans excel la 4ème cellule contient : "200 000" : les 4 zéros le pertube.
Auriez-vous une idée pour solutionner cela ?

        
Dim Ar As String
Dim Chaine As String
Do While Not EOF(NumFichier)

            iCol = 1
            Line Input #NumFichier, Chaine
            Ar = Split(Chaine, Separateur)
            For i = LBound(Ar) To UBound(Ar)
                Cells(iRow, iCol) = "@"   'Texte
                Cells(iRow, iCol).Value = CStr(Ar(i))
                
                iCol = iCol + 1
            Next
            iRow = iRow + 1
        Loop



Merci
Thibault
A voir également:

3 réponses

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,
Verifiez si vous avez un point en separateur decimal!
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonsoir, que souhaites-tu avoir dans excel? je comprends que tu souhaites autre chose que "200 000", mais quoi précisément?
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
peut-être:
Cells(iRow, iCol).NumberFormat = "@"   'Texte
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour yg_be,

Excel prend la virgule pour le separateur de millier meme si apparemment chez lui c'est un espace, de plus excel fait la soupe car de 20,0000 il passe a 200 000. C'est pour cela que je lui demande si le separateur decimal est un point, si ok, il faut remplacer la virgule par un point avant le split
0