Accueil > > > VBSCRIPT --> CONVERSION DE FICHIER TEXTE EN FICHIER EXCEL PAR LIGNE DE COMMANDE
VBSCRIPT --> CONVERSION DE FICHIER TEXTE EN FICHIER EXCEL PAR LIGNE DE COMMANDE
Information sur la source
Description
Ce script, lancé en ligne de commande dos, permet de convertir un fichier texte en fichier excel. Le code est à copier coller dans notepad, et à enregistrer sous genExcel.vbs, il est ensuite exécutable en ligne de commande sous Windows Le code est suffisamment documenté pour vous permettre de voir les options disponibles
Source
- 'Script de génération de fichier Excel à partir d'un fichier texte ou CSV
- 'Yves LAURENT - juin 2008
- '______________________________________________________________________________________
- '
- 'Usage : genExcel -s chemin_nom_fichier_texte -d chemin_nom_fichier_excel
- ' -a (ajustement auto des colonnes)
- '______________________________________________________________________________________
- '
- 'Structuration du fichier texte :
- '- Séparateur : ";"
- '- GR!| avant l'information : "Gras"
- '- IT!| avant l'information : "Italique"
- '- TI!| avant l'information : Titre
- '______________________________________________________________________________________
-
- ' Récupération des infos
-
- dim Options, Numopt
- dim chemtxt, chemexcel
- dim fso, objExcel, objBook, objSheet, ligne, Ftxt, Cptli, Tabli
-
- Set Options = wscript.Arguments
- numopt=0
-
- while numopt< Options.count
- Select Case LCase(Options(numopt))
- Case "-s":
- numopt=numopt+1
- chemtxt=Options(numopt)
- Case "-d":
- numopt=numopt+1
- chemexcel=Options(numopt)
- Case "-?":
- call usage
- Case Else:
- call usage
- End Select
- numopt=numopt+1
- wend
-
-
- ' Création de l'objet excel
-
- Set objExcel = CreateObject("Excel.Application")
- Set objBook = objExcel.Workbooks.Add
- Set objSheet = objBook.WorkSheets.Add
- Cptli=1
-
- Set fso= CreateObject("Scripting.FileSystemObject")
- if chemtxt<>"" then
- Set Ftxt = fso.OpenTextFile(chemtxt)
- Do While Ftxt.AtEndOfStream<>true
- ligne=Ftxt.ReadLine
- Tabli=split(ligne,";")
- For icpt=0 to ubound(Tabli)
- Select Case Left(Tabli(icpt), 3)
- Case "GR!":
- objSheet.Cells(Cptli, icpt+1).Value = Right(Tabli(icpt), len(Tabli(icpt))-3)
- objSheet.Cells(Cptli, icpt+1).Font.Bold = true
- Case "IT!":
- objSheet.Cells(Cptli, icpt+1).Value = Right(Tabli(icpt), len(Tabli(icpt))-3)
- objSheet.Cells(Cptli, icpt+1).Font.Italic = true
- Case "TI!":
- objSheet.Cells(Cptli, icpt+1).Value = Right(Tabli(icpt), len(Tabli(icpt))-3)
- 'objSheet.Cells(Cptli, icpt+1).Font.Size = "11"
- objSheet.Cells(Cptli, icpt+1).Font.Bold = true
- objSheet.Cells(Cptli, icpt+1).Font.Color = RGB(0, 0, 255)
- Case Else:
- objSheet.Cells(Cptli, icpt+1).Value = Tabli(icpt)
- End Select
- Next
- Cptli=Cptli+1
- Loop
- End if
- objSheet.Columns.Autofit
-
- objBook.SaveAs chemexcel
- objBook.Close 'Fermeture du classeur Excel
- objExcel.Quit 'Fermeture de l'application Excel
- 'Désallocation mémoire
- Set objSheet = Nothing
- Set objBook = Nothing
- Set objExcel = Nothing
-
-
- Sub Usage
- MsgBox _
- "genExcel -s chemin_nom_fichier_texte -d chemin_nom_fichier_excel"&VBCRLF& _
- " -s chemin_nom_fichier_texte : chemin et nom du fichier source"&VBCRLF& _
- " -d chemin_nom_fichier_excel : chemin et nom du fichier excel de destination"&VBCRLF& _
- " GR! devant un champ : champ en gras"&VBCRLF& _
- " IT! devant un champ : champ en italique"&VBCRLF& _
- " TI! devant un champ : Titre en gras et bleu"&VBCRLF& _
- " -? Aide",vbInformation,"Usage"
- WScript.Quit (1)
- End Sub
-
-
-
'Script de génération de fichier Excel à partir d'un fichier texte ou CSV
'Yves LAURENT - juin 2008
'______________________________________________________________________________________
'
'Usage : genExcel -s chemin_nom_fichier_texte -d chemin_nom_fichier_excel
' -a (ajustement auto des colonnes)
'______________________________________________________________________________________
'
'Structuration du fichier texte :
'- Séparateur : ";"
'- GR!| avant l'information : "Gras"
'- IT!| avant l'information : "Italique"
'- TI!| avant l'information : Titre
'______________________________________________________________________________________
' Récupération des infos
dim Options, Numopt
dim chemtxt, chemexcel
dim fso, objExcel, objBook, objSheet, ligne, Ftxt, Cptli, Tabli
Set Options = wscript.Arguments
numopt=0
while numopt< Options.count
Select Case LCase(Options(numopt))
Case "-s":
numopt=numopt+1
chemtxt=Options(numopt)
Case "-d":
numopt=numopt+1
chemexcel=Options(numopt)
Case "-?":
call usage
Case Else:
call usage
End Select
numopt=numopt+1
wend
' Création de l'objet excel
Set objExcel = CreateObject("Excel.Application")
Set objBook = objExcel.Workbooks.Add
Set objSheet = objBook.WorkSheets.Add
Cptli=1
Set fso= CreateObject("Scripting.FileSystemObject")
if chemtxt<>"" then
Set Ftxt = fso.OpenTextFile(chemtxt)
Do While Ftxt.AtEndOfStream<>true
ligne=Ftxt.ReadLine
Tabli=split(ligne,";")
For icpt=0 to ubound(Tabli)
Select Case Left(Tabli(icpt), 3)
Case "GR!":
objSheet.Cells(Cptli, icpt+1).Value = Right(Tabli(icpt), len(Tabli(icpt))-3)
objSheet.Cells(Cptli, icpt+1).Font.Bold = true
Case "IT!":
objSheet.Cells(Cptli, icpt+1).Value = Right(Tabli(icpt), len(Tabli(icpt))-3)
objSheet.Cells(Cptli, icpt+1).Font.Italic = true
Case "TI!":
objSheet.Cells(Cptli, icpt+1).Value = Right(Tabli(icpt), len(Tabli(icpt))-3)
'objSheet.Cells(Cptli, icpt+1).Font.Size = "11"
objSheet.Cells(Cptli, icpt+1).Font.Bold = true
objSheet.Cells(Cptli, icpt+1).Font.Color = RGB(0, 0, 255)
Case Else:
objSheet.Cells(Cptli, icpt+1).Value = Tabli(icpt)
End Select
Next
Cptli=Cptli+1
Loop
End if
objSheet.Columns.Autofit
objBook.SaveAs chemexcel
objBook.Close 'Fermeture du classeur Excel
objExcel.Quit 'Fermeture de l'application Excel
'Désallocation mémoire
Set objSheet = Nothing
Set objBook = Nothing
Set objExcel = Nothing
Sub Usage
MsgBox _
"genExcel -s chemin_nom_fichier_texte -d chemin_nom_fichier_excel"&VBCRLF& _
" -s chemin_nom_fichier_texte : chemin et nom du fichier source"&VBCRLF& _
" -d chemin_nom_fichier_excel : chemin et nom du fichier excel de destination"&VBCRLF& _
" GR! devant un champ : champ en gras"&VBCRLF& _
" IT! devant un champ : champ en italique"&VBCRLF& _
" TI! devant un champ : Titre en gras et bleu"&VBCRLF& _
" -? Aide",vbInformation,"Usage"
WScript.Quit (1)
End Sub
Historique
- 15 décembre 2008 09:29:17 :
- Ajout du nom de fichier sous lequel enregistrer le script
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Excel : Conversion de données numériques au format texte [ par seb ]
Bonjour,Je bosse avec Excel en ce moment (ah, les chiffres...). Je souhaite convertir le contenu (numérique) d'une cellule au format texte. Quelqu'un
Conversion fichier unix en fichier dos [ par thguillon ]
Est-ce que quelqu'un pourrait me filer une de ses sources pour convertir un fichier texte UNIX en un fichier texte au format DOS?En fait, mon problème
probleme conversion automatique et non voulue de texte sous excel (vba) [ par ppiou ]
j'ai concu une macro qui permet l'import d'un fichier texte tbulé dans excel.ma macro fonctionne toutefois il y a un gros probleme lors de l import...
Please help me! conversion d'un fichier texte en fichier excel(97) en utilisant VB [ par wanirb ]
bounjours tt le monde,lors de l'ouverture d'un fichier texte sous EXCELL97 avec VB, toutes les valeurs numériques contenant des virgules sont concider
Envoyer du texte après l'execution du commande DOS ? [ par kouby2k3 ]
Bonjour,je suis confronté à un pb après l'execution d'une appli exe sous DOS, l'application, une fois lancée, demande des paramètres (ke l'on ne peut
Conversion fichier texte format DOS en WIN [ par JMiche ]
Bonjour, J'ai des fichiers en dBaseIII utilisant le codage DOS que je voudrais utiliser sous VBA. Problème : la table de conversion des caractères éte
Modification des droits sur un dossier [ par mika69 ]
Bonjour,Mon problème est le suivant, pour mon boulot, on m'a demander de gérer des droits d'accès spécifique sur un dossier particulier, en fonction q
Couleur de texte dans une cellulle Excel [ par Drahnur2 ]
Bonjour, Je cherche a mettre un texte d'une cellule Excel une couleur spécfique (par rapport a plusieurs variables) Je sais comment récuperer les don
Texte défilant Excel [ par peisinoe ]
Bonjour,Votre site m'a déjà bien aidé, mais voilà, je bloque depuis qq jours sur un problème. J'ai cherché partout, personne n'a la réponse: Je voudra
executer la commande dos "dir" [ par rober ]
bonsoir, je voudrais dans mon prog executer la commande dos "dir" pour lister tous les sous repertoires a partir d'un chemin connu et ensuite l'ecrir
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|