Vbscript permettant de passer un fichier excel en csv

Description

J'ai eu un peu de mal à trouver les informations pour faire tout ca donc et je me suis dit que ca pourrait eventuellement interesser alors voila.
Ce petit code réaliser à partir de quelques sources différentes permet de passe n'importe quel fichier xls en csv et le en créant le csv dans le même repertoire que le xls.

Désolé de ne pas citer d'auteurs pour les sources pompées mais je n'ai absolument pas fait attention lors de ma recherche.
Si vous reconnaissez votre code, faites moi signe, je vous cite :D.

Source / Exemple :


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

Codes Sources

A voir également

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.