Je suis tombé sur un os: je veux ouvrir un fichier excel puis
l'enregistrer en csv mais avec un ; comme sépararateur et non une ,
voici un extrait de mon bout de code:
Set objXLA = CreateObject("Excel.Application")
objXLA.Visible = False
objXLA.Workbooks.Open(fichXLS)
Dim objXWB
Set objXWB = objXLA.ActiveWorkbook
objXWB.SaveAs Fcsv, 6
Set objXWB = Nothing
objXLA.Application.DisplayAlerts = False
objXLA.Quit
Set objXLA = Nothing
J'ai déjà bien bourlingué sur google et autre et il parle d'enregistrer
le fichier csv selon les paramètres régionaux mais cela ne marche pas
non plus.
C'est dingue car la ligne dans excel enregistrer sous avec séparateur ;
existe dans excel non ?
J'ai l'impression qu'il n'y a pas de solution les options de saveas
d'excel ...
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
Gilles LAURENT [MVP]
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le message de news: | Bonjour,
Bonjour,
| Je suis tombé sur un os: je veux ouvrir un fichier excel puis | l'enregistrer en csv mais avec un ; comme sépararateur et non une , [...]
Excel utilise par défaut la virgule comme séparateur de listes lors de l'enregistrement au format CSV. Cela permet un comportement identique quelque soit la locale utilisée. Toutefois il est possible de forcer Excel à utiliser le séparateur de listes défini dans les options régionales et linguistiques en fixant la propriété Local de la méthode SaveAs à True :
-- Gilles LAURENT MVP Windows Server - Admin Frameworks http://glsft.free.fr
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le
message de
news:mn.4d067d8a62d89f07.55474@NOSPAMlaposte.net
| Bonjour,
Bonjour,
| Je suis tombé sur un os: je veux ouvrir un fichier excel puis
| l'enregistrer en csv mais avec un ; comme sépararateur et non une ,
[...]
Excel utilise par défaut la virgule comme séparateur de listes lors de
l'enregistrement au format CSV. Cela permet un comportement identique
quelque soit la locale utilisée. Toutefois il est possible de forcer
Excel à utiliser le séparateur de listes défini dans les options
régionales et linguistiques en fixant la propriété Local de la méthode
SaveAs à True :
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le message de news: | Bonjour,
Bonjour,
| Je suis tombé sur un os: je veux ouvrir un fichier excel puis | l'enregistrer en csv mais avec un ; comme sépararateur et non une , [...]
Excel utilise par défaut la virgule comme séparateur de listes lors de l'enregistrement au format CSV. Cela permet un comportement identique quelque soit la locale utilisée. Toutefois il est possible de forcer Excel à utiliser le séparateur de listes défini dans les options régionales et linguistiques en fixant la propriété Local de la méthode SaveAs à True :
-- Gilles LAURENT MVP Windows Server - Admin Frameworks http://glsft.free.fr
---DGI972---
Après mûre réflexion, Gilles LAURENT [MVP] a écrit :
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le message de news:
Bonjour,
Bonjour,
Je suis tombé sur un os: je veux ouvrir un fichier excel puis l'enregistrer en csv mais avec un ; comme sépararateur et non une ,
[...]
Excel utilise par défaut la virgule comme séparateur de listes lors de l'enregistrement au format CSV. Cela permet un comportement identique quelque soit la locale utilisée. Toutefois il est possible de forcer Excel à utiliser le séparateur de listes défini dans les options régionales et linguistiques en fixant la propriété Local de la méthode SaveAs à True :
Le coup des six , aprés le saveas, il fallait le savoir ... L'avantage des ; par rapport aux virgules c'est que en double cliquant sur le fichier csv (avec ;) excel s'ouvre automatique et les champs sont dans des colonnes tandis que avec la virgule il faut passer par fichier ouvrir et utiliser le mode import d'excel, beaucoup moins pratique.
merci merci merci
Après mûre réflexion, Gilles LAURENT [MVP] a écrit :
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le
message de
news:mn.4d067d8a62d89f07.55474@NOSPAMlaposte.net
Bonjour,
Bonjour,
Je suis tombé sur un os: je veux ouvrir un fichier excel puis
l'enregistrer en csv mais avec un ; comme sépararateur et non une ,
[...]
Excel utilise par défaut la virgule comme séparateur de listes lors de
l'enregistrement au format CSV. Cela permet un comportement identique
quelque soit la locale utilisée. Toutefois il est possible de forcer
Excel à utiliser le séparateur de listes défini dans les options
régionales et linguistiques en fixant la propriété Local de la méthode
SaveAs à True :
Le coup des six , aprés le saveas, il fallait le savoir ...
L'avantage des ; par rapport aux virgules c'est que en double cliquant
sur le fichier csv (avec ;) excel s'ouvre automatique et les champs
sont dans des colonnes tandis que avec la virgule il faut passer par
fichier ouvrir et utiliser le mode import d'excel, beaucoup moins
pratique.
Après mûre réflexion, Gilles LAURENT [MVP] a écrit :
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le message de news:
Bonjour,
Bonjour,
Je suis tombé sur un os: je veux ouvrir un fichier excel puis l'enregistrer en csv mais avec un ; comme sépararateur et non une ,
[...]
Excel utilise par défaut la virgule comme séparateur de listes lors de l'enregistrement au format CSV. Cela permet un comportement identique quelque soit la locale utilisée. Toutefois il est possible de forcer Excel à utiliser le séparateur de listes défini dans les options régionales et linguistiques en fixant la propriété Local de la méthode SaveAs à True :
Le coup des six , aprés le saveas, il fallait le savoir ... L'avantage des ; par rapport aux virgules c'est que en double cliquant sur le fichier csv (avec ;) excel s'ouvre automatique et les champs sont dans des colonnes tandis que avec la virgule il faut passer par fichier ouvrir et utiliser le mode import d'excel, beaucoup moins pratique.
merci merci merci
Gilles LAURENT [MVP]
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le message de news: || objXWB.Application.DisplayAlertsúlse || objXWB.SaveAs Fcsv,6,,,,,,,,,,True | Le coup des six , aprés le saveas, il fallait le savoir ...
:-)
En complément d'information :
A la différence de VBA, VBScript ne supporte pas le passage des arguments "par nom" mais uniquement "par position". Il est donc de ce fait nécessaire de spécifier tous les arguments, même ceux marqués comme optionnels, lorsque l'on souhaite spécifier un argument qui précède un argument optionnel non défini explicitement. Ci-dessous le prototype de la méthode SaveAs de l'objet Workbook :
En VBA ( passage des arguments "par nom" ) objXWB.SaveAs Filename:üsv, FileFormat:=xlCSV, Local:=True
En VBScript ( passage des arguments "par position" : Localème ) objXWB.SaveAs Fcsv,6,,,,,,,,,,True
| merci merci merci
PS D:Test> (1..3) | % {"de rien"}
-- Gilles LAURENT MVP Windows Server - Admin Frameworks http://glsft.free.fr
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le
message de
news:mn.51807d8a5a3e745b.55474@NOSPAMlaposte.net
|| objXWB.Application.DisplayAlertsúlse
|| objXWB.SaveAs Fcsv,6,,,,,,,,,,True
| Le coup des six , aprés le saveas, il fallait le savoir ...
:-)
En complément d'information :
A la différence de VBA, VBScript ne supporte pas le passage des
arguments "par nom" mais uniquement "par position". Il est donc de ce
fait nécessaire de spécifier tous les arguments, même ceux marqués comme
optionnels, lorsque l'on souhaite spécifier un argument qui précède un
argument optionnel non défini explicitement. Ci-dessous le prototype de
la méthode SaveAs de l'objet Workbook :
"---DGI972---" <gilles.dermigny@*NO SPAM*laposte.net> a écrit dans le message de news: || objXWB.Application.DisplayAlertsúlse || objXWB.SaveAs Fcsv,6,,,,,,,,,,True | Le coup des six , aprés le saveas, il fallait le savoir ...
:-)
En complément d'information :
A la différence de VBA, VBScript ne supporte pas le passage des arguments "par nom" mais uniquement "par position". Il est donc de ce fait nécessaire de spécifier tous les arguments, même ceux marqués comme optionnels, lorsque l'on souhaite spécifier un argument qui précède un argument optionnel non défini explicitement. Ci-dessous le prototype de la méthode SaveAs de l'objet Workbook :