VBSCRIPT PERMETTANT DE PASSER UN FICHIER EXCEL EN CSV

cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 - 20 avril 2007 à 14:18
esus1985 Messages postés 76 Date d'inscription mercredi 1 juin 2005 Statut Membre Dernière intervention 26 février 2009 - 2 mai 2007 à 11:44
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/42371-vbscript-permettant-de-passer-un-fichier-excel-en-csv

esus1985 Messages postés 76 Date d'inscription mercredi 1 juin 2005 Statut Membre Dernière intervention 26 février 2009
2 mai 2007 à 11:44
oui bon ok d'accord...
du coup, ca sert à rien et ton code est beaucoup plus rapide...
mais euh !
^^
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
27 avril 2007 à 11:05
Bien après lecture du contenu de ton vbs il réalise simplement un passage des données de ton xls vers un fichier formatté en csv.
Neni, tu utilises déjà Excel donc je maintiens le fait que tu remplaces ton code par ce que j'ai fournit comme autre solution puis en remplacant uniquement les <FICHIER_EXCEL> par ton fichier passé en argument le résultat est le meme.
esus1985 Messages postés 76 Date d'inscription mercredi 1 juin 2005 Statut Membre Dernière intervention 26 février 2009
27 avril 2007 à 10:46
oui bon, il etait que 14h45 donc, j'etais en train de digerer :D
je ne veux pas utiliser directement excel car j'ai plusieurs fichiers differents sur lesquels differentes modifications sont à apporter donc, il me faut un script dans lequel je rentre n'importe quel fichier et qui me le modifie pour ensuite lancer un lot DTS manuellement. De plus, il n'y a pas toujours que ca comme changement à faire donc le vbs me parait indiqué.
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
26 avril 2007 à 16:34
Je ne vois pas du tout le rapport entre ton code/ma version/et ta réponse mais bon passons...
esus1985 Messages postés 76 Date d'inscription mercredi 1 juin 2005 Statut Membre Dernière intervention 26 février 2009
26 avril 2007 à 14:46
willi :

par ce que des fois, un script vb sur un serveur ne referme pas bien l'objet excel et sur un serveur entreprise, on ne prend pas le risque de lancer ca donc on execute un vbs sur un portable avant

shad108 : je n'en avais pas besoin pour faire ce que j'ai eu à faire donc je n'ai pas été chercher jusque la.
Shad108 Messages postés 8 Date d'inscription mardi 26 juillet 2005 Statut Membre Dernière intervention 29 mai 2007
20 avril 2007 à 16:38
Pas mal, mais le top serait de ne pas utiliser Excel pour lire les infos du fichier excel, en fait il existe une technique de permettant d'utiliser ADO pour transférer ton workbook vers un fichier csv, de plus tu ne tiens pas compte de la langue de ton utilisateur car pour la langue français c'est bien le séparateur ";" mais tu passe ton régional settings en anglais ton séparateur deviens ",", et dans ce cas lors de l'ouverture CSV l'utilisateur anglais ne pourra pas lire correctement ton fichier.
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
20 avril 2007 à 14:18
Pourquoi se prendre la tête alors qu'excel permet de convertir ton xls au format csv.

-----------------------------------

dim oExcelApp
dim oExcelWbk

Set oExcelApp = CreateObject("Excel.Application")
oExcelApp.DisplayAlerts = False

Set oExcelWbk = oExcelApp.Workbooks.Open(<FICHIER_EXCEL>)
oExcelWbk.SaveAs left(<FICHIER_EXCEL>,len(<FICHIER_EXCEL>)-4) & ".csv",6,,,,,,,,,,True

oExcelWbk.Close False
oExcelApp.Quit

Set oExcelWbk = nothing
Set oExcelApp = nothing
Rejoignez-nous