1. Termékek
  2.   Táblázat
  3.   C++
  4.   Libxlsxwriter
 
  

Nyílt forráskódú C-könyvtár Excel-táblázatokhoz

Microsoft Excel 2007 és XLSX táblázatfájlok létrehozása, szerkesztése, manipulálása és konvertálása, táblázatok egyesítése, diagramok hozzáadása a munkalapokhoz a nyílt forráskódú C API-n keresztül.

A Libxlsxwriter egy nyílt forráskódú C-könyvtár, amely használható a Microsoft Excel 2007, valamint az Excel XLSX fájlokkal való együttműködéshez saját alkalmazásaiban. A Libxlsxwriter könyvtár nagyon kompatibilis az Excel XLSX fájlokkal, és lehetővé teszi a fejlesztők számára az XLSX táblázatok egyszerű létrehozását, módosítását és feldolgozását. A könyvtár zökkenőmentesen működik olyan vezető platformokon, mint a Linux, FreeBSD, OpenBSD, OS X, iOS és Windows. 32 és 64 bitesre is tud fordítani.

A nyílt forráskódú Libxlsxwriter könyvtár jól optimalizált, és megfelelően tud működni a nagy táblázatkezelő fájlokkal. Számos fontos funkciót támogat, például táblázatcellák egyesítése, nevek meghatározása, automatikus szűrők támogatása, diagramok hozzáadása munkalapoldalakhoz, adatellenőrzés és legördülő listák, PNG/JPEG képek hozzáadása, cella megjegyzések hozzáadása, VBA makrók használata , oszlop hozzáadása vagy eltávolítása egy lapról, és még sok más.

Previous Next

A Libxlsxwriter használatának megkezdése

A Libxlsxwriter támogatja a CMake-et a könyvtár felépítéséhez és telepítéséhez. Kérjük, használja a következő parancsot.

Telepítse a libxlsxwriter programot a CRAN-on keresztül

 cmake $SOURCE_DIR $FLAGS 

Klónozza a libxlsxwriter forráskód-tárat a GitHubból. Kérjük, használja a következő kódot.

Telepítse a libxlsxwriter programot a GitHubon keresztül

it clone https://github.com/jmcnamara/libxlsxwriter.git
# Or use your preferred protocol instead of https 

C API az Excel XLSX táblázat létrehozásához

A nyílt forráskódú Libxlsxwriter API lehetővé teszi a szoftverfejlesztők számára, hogy Excel XLSX-táblázatokat hozzanak létre és módosítsanak C-alkalmazásaikon belül. Az API támogatja szövegek, számok, képletek és hiperhivatkozások írását több munkalapra egy Excel-táblázatfájlba. Könnyedén importálhat vagy exportálhat adatokat Excel-fájlokból, egyesíthet vagy feloszthat lapokat, kereshet adatokat és még sok mást.

Excel Spreadsheet létrehozása keresztül C API <

#include "xlsxwriter.h"
int main() {
    /* Create a new workbook and add a worksheet. */
    lxw_workbook  *workbook  = workbook_new("demo.xlsx");
    lxw_worksheet *worksheet = workbook_add_worksheet(workbook, NULL);
    /* Add a format. */
    lxw_format *format = workbook_add_format(workbook);
    /* Set the bold property for the format */
    format_set_bold(format);
    /* Change the column width for clarity. */
    worksheet_set_column(worksheet, 0, 0, 20, NULL);
    /* Write some simple text. */
    worksheet_write_string(worksheet, 0, 0, "Hello", NULL);
    /* Text with formatting. */
    worksheet_write_string(worksheet, 1, 0, "World", format);
    /* Write some numbers. */
    worksheet_write_number(worksheet, 2, 0, 123,     NULL);
    worksheet_write_number(worksheet, 3, 0, 123.456, NULL);
    /* Insert an image. */
    worksheet_insert_image(worksheet, 1, 2, "logo.png");
    workbook_close(workbook);
    return 0;
}

Munka Excel diagramokkal

A Libxlsxwriter API lehetőséget biztosít diagramok hozzáadására és módosítására Excel-táblázatokhoz C parancsok használatával. A diagramjelölő függvények segítségével diagramokat hozhat létre és kezelhet. Hozzáadhat egy trendvonalat az adatok trendjeinek jelzéséhez, a hibasávokat pedig az adatok hibahatárainak jelzéséhez. A diagramsorozatokhoz adatcímkéket is megadhat, amelyek jelzik a kirajzolt adatpontok értékeit. Könnyen alkalmazhatja a diagram formázási tulajdonságait bármely diagramobjektumra.

Charts in Excel Worksheet keresztül Libxlsxwriter

#include "xlsxwriter.h"
int main() {
    lxw_workbook  *workbook  = new_workbook("chart.xlsx");
    lxw_worksheet *worksheet = workbook_add_worksheet(workbook, NULL);
    // User function to add data to worksheet, not shown here.
    write_worksheet_data(worksheet);
    // Create a chart object.
    lxw_chart *chart = workbook_add_chart(workbook, LXW_CHART_COLUMN);
    // In the simplest case we just add some value data series.
    // The NULL categories will default to 1 to 5 like in Excel.
    chart_add_series(chart, NULL, "=Sheet1!$A$1:$A$5");
    chart_add_series(chart, NULL, "=Sheet1!$B$1:$B$5");
    chart_add_series(chart, NULL, "=Sheet1!$C$1:$C$5");
    // Insert the chart into the worksheet
    worksheet_insert_chart(worksheet, CELL("B7"), chart);
    return workbook_close(workbook);
}

Dolgozzon az Excel adatellenőrzésével

Az adatellenőrzés egy Excel-szolgáltatás, amely lehetővé teszi a fejlesztők számára, hogy szabályozzák, hogy a felhasználók mit írnak be egy Excel-cellába. Például korlátozhatja a felhasználókat, hogy 1 és 6 közötti számot adjanak meg, vagy győződjön meg arról, hogy a szövegbevitel egy cellában 25 karakternél rövidebb. A Libxlsxwriter API számos lehetőséget kínál a felhasználói bevitel érvényesítésére, például bármely érték, egész szám, tizedesjegy, lista, dátum, idő, szöveghossz vagy egyéni képlet.

Kijelző testre Üzenet Amikor az Integer nem b/t 1 & 100

// Display a custom info message when integer isn't between 1 and 100.
data_validation->validate         = LXW_VALIDATION_TYPE_INTEGER;
data_validation->criteria         = LXW_VALIDATION_CRITERIA_BETWEEN;
data_validation->minimum_number   = 1;
data_validation->maximum_number   = 100;
data_validation->input_title      = "Enter an integer:";
data_validation->input_message    = "between 1 and 100";
data_validation->error_title      = "Input value is not valid!";
data_validation->error_message    = "It should be an integer between 1 and 100";

VBA makrók használata

A Libxlsxwriter API segítségével a szoftverfejlesztők könnyedén hozzáadhatnak függvényeket vagy makrókat tartalmazó VBA-fájlt egy XLSX-munkafüzethez. A függvényeket és makrókat tartalmazó Excel-fájloknak XLSM kiterjesztést kell használniuk, különben az Excel panaszt tesz, és esetleg nem nyitja meg a fájlt. A VBA makrók általában munkafüzetekre és munkalapobjektumokra vonatkoznak. Ha a VBA kódnevek nincsenek kifejezetten megadva, akkor a libxlsxwriter a ThisWorkbook és a Sheet1, Sheet2 stb. Excel alapértelmezéseit fogja használni.

BA Marcos hozzáadása az Excel Cookbook-hoz C alkalmazásokban

 
#include "xlsxwriter.h"
int main() {
    /* Note the xlsm extension of the filename */
    lxw_workbook  *workbook  = workbook_new("macro.xlsm");
    lxw_worksheet *worksheet = workbook_add_worksheet(workbook, NULL);
    worksheet_set_column(worksheet, COLS("A:A"), 30, NULL);
    /* Add a macro file extracted from an Excel workbook. */
    workbook_add_vba_project(workbook, "vbaProject.bin");
    worksheet_write_string(worksheet, 2, 0, "Press the button to say hello.", NULL);
    lxw_button_options options = {.caption = "Press Me", .macro = "say_hello",
                                  .width = 80, .height = 30};
     worksheet_insert_button(worksheet, 2, 1, &options);
    return workbook_close(workbook);
}
 Magyar