Es gibt Fälle in welchen man mittels GuiXT ein Textfile mit Separator erstellt (mit den Befehlen von OpenFile, Appendfile und CloseFile)
Mehr und mehr wünschen sich die Kunden, dass man jedoch ein Excel File erstellt.
Eine Variante wäre direkt ein Excel zu beschreiben. (mittels CallVb oder auch CallVbs).

Wenn man nun aber ein mit Separator getrenntes Textfile hat und es in  ein Excel File wandeln will, so kann man die untenstehende Methode dazu verwenden:

Function Transform_TXT_TO_EXCEL(filename, new_filename)
 'open Excel file for update
 Dim XL 
 Const xlDelimited = 1
 Set XL = guixt.CreateObject("Excel.Application")
 'Excel Hell dunkel lassen
 XL.Visible = False 
 XL.WorkBooks.OpenText filename ,65001,,xlDelimited,,,,,,,True,";"
 XL.ActiveWorkbook.SaveAs new_filename, 51
 XL.Quit
End Function

An die Methode übergibt man einfach das Textfile und das zu erstellende Excelfile inkl. Pfad und Endung *.xlsx,
dann öffnet die Methode das Textfile und speichert es als *.xlsx Datei ab. Je nach Trennzeichen muss man das Coding an der entsprechenden Stelle anpassen.

XL.WorkBooks.OpenText filename ,,,xlDelimited,,,,,,,True,";"

Im Beispiel ist ein Semikolon „;“als Trennzeichen verwendet worden.

Achtung !

Möchte man, dass Excel Zahlen korrektur ins Zahlenformat transferiert, so müssen die Zahlen in der Textdatei mit ‚.‘ (Punkt) als Komma hinterlegt sein.
Hat man ‚,‘ (Komma) als Komma hinterlegt, so interpretiert Excel die Zahl leider als Charakterwert.

Empfehlen