Soyez le premier à donner votre avis sur cette source.
Vue 23 966 fois - Téléchargée 1 018 fois
if wscript.arguments.length > 0 then path_file = lcase( wscript.arguments(0) ) nomfichier = mid(path_file,1,len(path_file) - 3) & "csv" 'load excel set ex = Wscript.createobject("excel.application") 'ouvre le doc excel ex.Workbooks.Open path_file ex.visible = false 'supprime la première ligne 'va mettre toutes les entetes et compter le nombre de colonnes nbcol = 1 while not ex.ActiveSheet.cells(1,nbcol).value = "" fichier = fichier & ex.ActiveSheet.cells(1,nbcol).value & ";" nbcol = nbcol +1 wend nbcol = nbcol - 1 fichier = mid(fichier,1, len(fichier)-1) fichier = fichier & vbcrlf 'va enregistrer tous les champ de chaque ligne dans la variable fichier nbligne = 2 while not ex.ActiveSheet.cells(nbligne,1).value = "" for i = 1 to nbcol fichier = fichier & ex.ActiveSheet.cells(nbligne,i).value if i < nbcol then fichier = fichier & ";" next nbligne = nbligne +1 fichier = fichier & vbcrlf wend msgbox fichier 'ferme excel ex.Application.DisplayAlerts = False 'on va ouvrir un fichier texte et ecrire dedans la variable fichier Set fso = CreateObject("Scripting.FileSystemObject") 'Creation du fichier texte et ecriture dans ce fichier Set fichierTexte = fso.CreateTextFile(nomfichier , True) fichierTexte.WriteLine(fichier) fichierTexte.close ex.quit msgbox ".csv créé" else msgbox "Déposer le fichier à convertir sur l'icone du programme" continue = false end if
du coup, ca sert à rien et ton code est beaucoup plus rapide...
mais euh !
^^
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.
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é.
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.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.