Vorheriges Thema

excel_close

Nächstes Thema

excel_get_sheetnames

Diese Seite

excel_create

excel_create erzeugt eine neue Excel-Datei (Excel 2007).

oExcel = excel_create(ssFile)
oExcel = excel_create(ssFile, ssTemplateFile)

Returnwert

oExcel ist ein UniScript Objekt oder falls ein Fehler auftritt der Wert 0.

Parameter

ssFile

ssFile ist der vollständige Dateiname. Falls eine Datei mit gleichen Namen bereits existiert, wird die Datei überschrieben.

ssTemplateFile

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

../../_images/excel_create-style.png ../../_images/excel_create-result.png
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