excel_create erzeugt eine neue Excel-Datei (Excel 2007).
Returnwert
oExcel ist ein UniScript Objekt oder falls ein Fehler auftritt der Wert 0.
Parameter
ssFile ist der vollständige Dateiname. Falls eine Datei mit gleichen Namen bereits existiert, wird die Datei überschrieben.
ssTemplateFile ist der vollständige Dateiname einer xlsx-Datei. Die Template-Datei ist eine Standard-Excel-Datei, die mit Excel 2007 erzeugt werden kann. Aus der Vorlage wird die Stiltabelle styles.xml in die neue Datei kopiert. Jeder Stil wird über einen Index zugewiesen. Mit Hilfe der Funktion excel_sheet_put_rows kann dann für jede Zelle der Stil festgelegt werden. Siehe Beispiel.
Beispiel
def test_excel_write()
{
smData = ["Speed", "Torque";
"rpm", "Nm"];
rmData = [1000.0, 10.0;
2000.0, 20.0;
3000.0, 30.0;
4000.0, 40.0;
5000.0, 50.0];
ssExcelFile = GetSaveFileName("c:\test.xlsx", "Excel 2007 File|*.xlsx*|")
if (ssExcelFile == "") {
return;
}
ssStyleFile = GetProfileString_Policy("ExcelExport", "StyleTemplate", ..
GetRootDirectory() + "template/excel/styles.xlsx");
hMap = excel_get_style_map(ssStyleFile);
styNumber = excel_get_style_index(hMap, "0.0000");
styHeader = excel_get_style_index(hMap, "Channelnames");
MapDestroy(hMap);
oExcel = excel_create(ssExcelFile, ssStyleFile);
if (type(oExcel) == "error") {
MessageBoxError("Excel-Export\n\n%s\n\nFile: %s", oExcel.message, ssExcelFile);
return FALSE;
}
oSheet = excel_sheet_create(oExcel, "Data1", nr(smData) + nr(rmData), nc(smData));
n = excel_sheet_put_rows(oSheet, smData, zeros(size(smData)) + styHeader);
if (type(n) == "error") {
MessageBoxError("Excel-Export\n\n%s\n\nFile: %s", n.message, ssExcelFile);
return FALSE;
}
n = excel_sheet_put_rows(oSheet, rmData, zeros(size(rmData)) + styNumber);
if (type(n) == "error") {
MessageBoxError("Excel-Export\n\n%s\n\nFile: %s", n.message, ssExcelFile);
return FALSE;
}
excel_sheet_close(oSheet);
excel_close(oExcel);
ShellExecute(ssExcelFile);
return TRUE;
}
History
| Version | Beschreibung |
|---|---|
| 5.5.0 | Neu. |
id-469683