Bonjour,
J'ai un pb avec excel xp. Quand je sauve au format csv par=20
l'interm=E9daire des menus, le s=E9parateur est le point-
virgule mais =E7a devient une virgule quand je sauve par=20
l'interm=E9daire d'une maco.
Comment faire pour que =E7a reste un point-virgule avec les=20
macros aussi?
J'ai essay=E9 saveas... local:=3Dtrue mais =E7a ne marche pas.
Merci pour votre aide.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Clément Marcotte
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
"seamus" a écrit dans le message de news:5ee001c3e5b9$027e7be0$ Bonjour, J'ai un pb avec excel xp. Quand je sauve au format csv par l'intermédaire des menus, le séparateur est le point- virgule mais ça devient une virgule quand je sauve par l'intermédaire d'une maco. Comment faire pour que ça reste un point-virgule avec les macros aussi? J'ai essayé saveas... local:=true mais ça ne marche pas. Merci pour votre aide.
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
"seamus" <seamus0000@yahoo.fr> a écrit dans le message de
news:5ee001c3e5b9$027e7be0$a401280a@phx.gbl...
Bonjour,
J'ai un pb avec excel xp. Quand je sauve au format csv par
l'intermédaire des menus, le séparateur est le point-
virgule mais ça devient une virgule quand je sauve par
l'intermédaire d'une maco.
Comment faire pour que ça reste un point-virgule avec les
macros aussi?
J'ai essayé saveas... local:=true mais ça ne marche pas.
Merci pour votre aide.
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
"seamus" a écrit dans le message de news:5ee001c3e5b9$027e7be0$ Bonjour, J'ai un pb avec excel xp. Quand je sauve au format csv par l'intermédaire des menus, le séparateur est le point- virgule mais ça devient une virgule quand je sauve par l'intermédaire d'une maco. Comment faire pour que ça reste un point-virgule avec les macros aussi? J'ai essayé saveas... local:=true mais ça ne marche pas. Merci pour votre aide.
Seamus
ok merci
mais n'y-a-til aucun moyen de faire ça uniquement avec saveas? vu que le point vigule apparait lorsque je sauvegarde le fichier à la main, pourquoi n'apparait-il pas lors d'une sauvegarde avec macro? merci
ok merci
mais n'y-a-til aucun moyen de faire ça uniquement avec
saveas?
vu que le point vigule apparait lorsque je sauvegarde le
fichier à la main, pourquoi n'apparait-il pas lors d'une
sauvegarde avec macro?
merci
mais n'y-a-til aucun moyen de faire ça uniquement avec saveas? vu que le point vigule apparait lorsque je sauvegarde le fichier à la main, pourquoi n'apparait-il pas lors d'une sauvegarde avec macro? merci