Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Export CSV avec EXCEL 2000

6 réponses
Avatar
AbouArez
bonjour,

Existe t il un moyen pour creer un fichier CSV ayant comme
separateur de liste le ; dans une macro avec Excel 2000 ?
Il me met toujours une virgule, De plus le format date
qu'il me met est de la forme : MM/JJ/AAAA ????

Sous XP j'ai trouve la variable LOCAL a ajouter au saveas,
mais sous 2000 il n'y en a pas !

PS : l'ordinateur a comme separateur de liste dans ses
options regionales le ; !

Merci pour votre aide.

@+,
AbouArez. ;-)

6 réponses

Avatar
Geoffroy
-----Message d'origine-----
bonjour,

Existe t il un moyen pour creer un fichier CSV ayant
comme

separateur de liste le ; dans une macro avec Excel 2000 ?
Il me met toujours une virgule, De plus le format date
qu'il me met est de la forme : MM/JJ/AAAA ????

Sous XP j'ai trouve la variable LOCAL a ajouter au
saveas,

mais sous 2000 il n'y en a pas !

PS : l'ordinateur a comme separateur de liste dans ses
options regionales le ; !

Merci pour votre aide.

@+,
AbouArez. ;-)
.
Si le format "CSV" n'est pas ABSOLUMENT nécessaire
essaye avec le foramt "TXT" qui lui va appliquer ton

séparateur de listes (en tout cas en XL97).
Bonne chance

Avatar
Clément Marcotte
Bonjour,

Puisque que le format CSV n'est rien d'autre qu'un fichier texte:

Juste à pas passer par enregistrer sous.

La procédure suivante utilise trois façons différentes d'écrire un
fichier texte
avec VB-VBA:


Sub ecrirelefichiertexteavecdesvirgules()
Open "unbeaufichiertexte.txt" For Output As 1
Dim i As Integer, derniereligne As Integer
Sheets("Feuil1").Select
derniereligne = [a65536].End(xlUp).Row
'Avec Write
For i = 1 To derniereligne
Write #1, Cells(i, 1).Value; Cells(i, 2).Value; _
Cells(i, 3).Value; Cells(i, 4).Value
Next
'Avec Print et virgules
'Le séparateur dans le fichier est entre guillemets
'le séparateur VBA n'est pas entre guillemets
For i = 1 To derniereligne
Print #1, Chr(34); Cells(i, 1).Value; Chr(34); _
","; Chr(34); Cells(i, 2).Value; Chr(34); _
","; Cells(i, 3).Value; ","; Chr(34); _
Cells(i, 4).Value; Chr(34)
Next
'Le séparateur dans le fichier est entre guillemets
'le séparateur VBA n'est pas entre guillemets
'sauf pour les points-virgules qui collent les
'nom et les guillemets
For i = 1 To derniereligne
Print #1, Chr(34); Cells(i, 1).Value; Chr(34), ",", _
Chr(34); Cells(i, 2).Value; Chr(34); , _
",", Cells(i, 3).Value, ",", Chr(34); _
Cells(i, 4).Value; Chr(34)
Next
Close
End Sub


"AbouArez" a écrit dans le
message de news:393701c3de96$e6abdf30$
bonjour,

Existe t il un moyen pour creer un fichier CSV ayant comme
separateur de liste le ; dans une macro avec Excel 2000 ?
Il me met toujours une virgule, De plus le format date
qu'il me met est de la forme : MM/JJ/AAAA ????

Sous XP j'ai trouve la variable LOCAL a ajouter au saveas,
mais sous 2000 il n'y en a pas !

PS : l'ordinateur a comme separateur de liste dans ses
options regionales le ; !

Merci pour votre aide.

@+,
AbouArez. ;-)


Avatar
Hello,
j'ai le même problème.
Sous xp je mets local:=true, l'ordinateur a comme
separateur de liste dans ses options regionales le ; pour
moi aussi
mais ça marche pas...
merci de me dire si tu as résolu le pb

-----Message d'origine-----
bonjour,

Existe t il un moyen pour creer un fichier CSV ayant
comme

separateur de liste le ; dans une macro avec Excel 2000 ?
Il me met toujours une virgule, De plus le format date
qu'il me met est de la forme : MM/JJ/AAAA ????

Sous XP j'ai trouve la variable LOCAL a ajouter au
saveas,

mais sous 2000 il n'y en a pas !

PS : l'ordinateur a comme separateur de liste dans ses
options regionales le ; !

Merci pour votre aide.

@+,
AbouArez. ;-)
.



Avatar
Clément Marcotte
Si t'as été capable de lire la question tu aurais du être capable de
lire la réponse.

a écrit dans le message de
news:6b7d01c3e5b9$9dd1aae0$
Hello,
j'ai le même problème.
Sous xp je mets local:=true, l'ordinateur a comme
separateur de liste dans ses options regionales le ; pour
moi aussi
mais ça marche pas...
merci de me dire si tu as résolu le pb

-----Message d'origine-----
bonjour,

Existe t il un moyen pour creer un fichier CSV ayant
comme

separateur de liste le ; dans une macro avec Excel 2000 ?
Il me met toujours une virgule, De plus le format date
qu'il me met est de la forme : MM/JJ/AAAA ????

Sous XP j'ai trouve la variable LOCAL a ajouter au
saveas,

mais sous 2000 il n'y en a pas !

PS : l'ordinateur a comme separateur de liste dans ses
options regionales le ; !

Merci pour votre aide.

@+,
AbouArez. ;-)
.



Avatar
-----Message d'origine-----
Si t'as été capable de lire la question tu aurais du être
capable de

lire la réponse.


la réponse ne résout pas mon pb
ça ne prend en compte que 4 cases, c ça?
et puis il n'y a que la première ligne du fichier qui est
écrite chez moi

Avatar
Clément Marcotte
Pour jusqu'à la dernière colonne occupée sur la ligne 1. Même
l'ancienne version se rendait à la dernière ligne occupée sur la
colonne a

Sub ecrirelefichiertexteavecdesvirgules()
Open "c:copieunbeaufichiertexte.txt" For Output As 1
Dim i As Integer, derniereligne As Integer, dernierecolonne As
Integer
Dim j As Integer
Sheets("Données").Select
derniereligne = [a65536].End(xlUp).Row
dernierecolonne = [iv256].End(xlToLeft).Column
'Avec Write
For i = 1 To derniereligne
For j = 1 To dernierecolonne
Write #1, Cells(i, j).Value;
Next
Write #1,
Next

'Avec Print et virgules
'Le séparateur dans le fichier est entre guillemets
'le séparateur VBA n'est pas entre guillemets
For i = 1 To derniereligne
For j = 1 To dernierecolonne
Print #1, Chr(34); Cells(i, j).Value; Chr(34); ",";
Next
Print #1,
Next
'Le séparateur dans le fichier est entre guillemets
'le séparateur VBA n'est pas entre guillemets
'sauf pour les points-virgules qui collent les
'nom et les guillemets
For i = 1 To derniereligne
For j = 1 To dernierecolonne
Print #1, Chr(34); Cells(i, j).Value; Chr(34), ",",
Next
Print #1,
Next
Close
End Sub


a écrit dans le message de
news:613501c3e656$6e2f85d0$

-----Message d'origine-----
Si t'as été capable de lire la question tu aurais du être
capable de

lire la réponse.


la réponse ne résout pas mon pb
ça ne prend en compte que 4 cases, c ça?
et puis il n'y a que la première ligne du fichier qui est
écrite chez moi