OVH Cloud OVH Cloud

remplace les separateurs virgule par des points virgules dans un .

5 réponses
Avatar
raymond garreau
J'ai un fichier csv qui est enorme (150000 lgnes), et je cherche un moyen de
remplacerl les separateurs qui sont des vrgules par des points virgule afin
de pouvoir l'importer dans access.

En effet je n peux ouvrir ce fichier dans excel car il contient plus de
65000 lignes.

Merci beaucoup pour votre aide.
raymond

5 réponses

Avatar
Poulpor
Bonjour Raymond,

En ouvrant le csv avec notepad (demarrerexecuter : notepad), tu peux tout
sélectionner et faire un remplacer général.

Bon courage.

Poulpor


J'ai un fichier csv qui est enorme (150000 lgnes), et je cherche un moyen de
remplacerl les separateurs qui sont des vrgules par des points virgule afin
de pouvoir l'importer dans access.

En effet je n peux ouvrir ce fichier dans excel car il contient plus de
65000 lignes.

Merci beaucoup pour votre aide.
raymond


Avatar
raymond garreau
J'ai essayé notepad, mais il lui faut une seconde par ligne, et comme il y a
150000 lignes ca prendrait 2 jours.


Bonjour Raymond,

En ouvrant le csv avec notepad (demarrerexecuter : notepad), tu peux tout
sélectionner et faire un remplacer général.

Bon courage.

Poulpor


J'ai un fichier csv qui est enorme (150000 lgnes), et je cherche un moyen de
remplacerl les separateurs qui sont des vrgules par des points virgule afin
de pouvoir l'importer dans access.

En effet je n peux ouvrir ce fichier dans excel car il contient plus de
65000 lignes.

Merci beaucoup pour votre aide.
raymond




Avatar
Poulpor
Raymond,

je t'écris ce qui me passe par la tête à tester :
=> essayer avec wordpad pour voir si c'est mieux au niveau perf (ya pas de
raisons masi bon, ca se tente!)
=> monter le tout dans access => requête pour remplacer => copie du résultat
dans bloc-note, enregistrer sous csv
=> changer les paramètres régionaux de ton ordi (passer en anglais), le
temps de faire la manipulation, Access dera alors ok avec ces séparateurs
adaptés

Bon courage,

Poulpor.


J'ai essayé notepad, mais il lui faut une seconde par ligne, et comme il y a
150000 lignes ca prendrait 2 jours.


Bonjour Raymond,

En ouvrant le csv avec notepad (demarrerexecuter : notepad), tu peux tout
sélectionner et faire un remplacer général.

Bon courage.

Poulpor


J'ai un fichier csv qui est enorme (150000 lgnes), et je cherche un moyen de
remplacerl les separateurs qui sont des vrgules par des points virgule afin
de pouvoir l'importer dans access.

En effet je n peux ouvrir ce fichier dans excel car il contient plus de
65000 lignes.

Merci beaucoup pour votre aide.
raymond






Avatar
Ange Ounis
Essaye cette petite procédure (en l'adaptant à ton contexte) :

''''''''''''''''''
Sub ChangeSep()
Dim Fich
Dim FSO, oFich, S
Fich = "d:essaiText.txt"
Set FSO = CreateObject("Scripting.FileSystemObject")
Set oFich = FSO.OpenTextFile(Fich, 1)
'récupère le texte intégral du fichier
S = oFich.Readall
oFich.Close
'change les ; en ,
S = Join(Split(S, ","), ";")
'réécrit le fichier (ici sous un autre nom)
Fich = "d:essaiText_2.txt"
Set oFich = FSO.OpenTextFile(Fich, 2, True)
oFich.write S
oFich.Close
End Sub
''''''''''''''''''

Sur mon pc, le changement de séparateur nécessite quelques secondes.
(Pour ouvrir un fichier texte de 150000 lignes, OOo est bien plus rapide que
Word !...)

----------
Ange Ounis
----------

J'ai un fichier csv qui est enorme (150000 lgnes), et je cherche un moyen de
remplacerl les separateurs qui sont des vrgules par des points virgule afin
de pouvoir l'importer dans access.

En effet je n peux ouvrir ce fichier dans excel car il contient plus de
65000 lignes.

Merci beaucoup pour votre aide.
raymond


Avatar
Ange Ounis
'change les ; en ,


C'est bien évidemment l'inverse !

----------
Ange Ounis
----------

Essaye cette petite procédure (en l'adaptant à ton contexte) :

''''''''''''''''''
Sub ChangeSep()
Dim Fich
Dim FSO, oFich, S
Fich = "d:essaiText.txt"
Set FSO = CreateObject("Scripting.FileSystemObject")
Set oFich = FSO.OpenTextFile(Fich, 1)
'récupère le texte intégral du fichier
S = oFich.Readall
oFich.Close
'change les ; en ,
S = Join(Split(S, ","), ";")
'réécrit le fichier (ici sous un autre nom)
Fich = "d:essaiText_2.txt"
Set oFich = FSO.OpenTextFile(Fich, 2, True)
oFich.write S
oFich.Close
End Sub
''''''''''''''''''

Sur mon pc, le changement de séparateur nécessite quelques secondes.
(Pour ouvrir un fichier texte de 150000 lignes, OOo est bien plus rapide
que Word !...)

----------
Ange Ounis
----------

J'ai un fichier csv qui est enorme (150000 lgnes), et je cherche un
moyen de remplacerl les separateurs qui sont des vrgules par des
points virgule afin de pouvoir l'importer dans access.

En effet je n peux ouvrir ce fichier dans excel car il contient plus
de 65000 lignes.

Merci beaucoup pour votre aide.
raymond