1. Ürün:% s
  2.   E-tablo
  3.   C++
  4.   Libxlsxwriter
 
  

Excel Elektronik Tabloları için Açık Kaynak C Kitaplığı

Microsoft Excel 2007 ve XLSX Elektronik Tablo dosyalarını oluşturun, Düzenleyin, İşleyin ve Dönüştürün, e-tabloları birleştirin, Açık Kaynak C API aracılığıyla çalışma sayfasına grafikler ekleyin.

Libxlsxwriter, Microsoft Excel 2007'nin yanı sıra Excel XLSX dosyalarıyla kendi uygulamalarınızın içinde çalışmak için kullanılabilecek açık kaynaklı bir C kitaplığıdır. Libxlsxwriter kitaplığı, Excel XLSX dosyalarıyla çok uyumludur ve geliştiricilerin XLSX elektronik tablolarını kolaylıkla oluşturmasına, değiştirmesine ve işlemesine olanak tanır. Kütüphane Linux, FreeBSD, OpenBSD, OS X, iOS ve Windows gibi önde gelen platformlarda sorunsuz çalışır. 32 bit için olduğu kadar 64 bit için de derlenebilir.

Açık kaynak Libxlsxwriter kitaplığı iyi optimize edilmiştir ve büyük elektronik tablo dosyalarıyla düzgün şekilde çalışabilir. Elektronik tablo hücrelerini birleştirme, adları tanımlama, Otomatik Filtreler desteği, çalışma sayfası sayfalarına Grafik ekleme, veri doğrulama ve açılır listeler, PNG/JPEG görüntüleri ekleme, hücre yorumları ekleme, VBA makrolarıyla çalışma gibi birçok önemli özellik için destek içerir. , bir sayfadan sütun ekleme veya kaldırma ve çok daha fazlası.

Previous Next

Libxlsxwriter'ı Kullanmaya Başlarken

Libxlsxwriter, kitaplığı oluşturmak ve kurmak için CMake'i destekler. Lütfen aşağıdaki komutu kullanın.

libxlsxwriter'ı CRAN aracılığıyla kurun

 cmake $SOURCE_DIR $FLAGS 

GitHub'dan libxlsxwriter kaynak kodu deposunu klonlayın. Lütfen aşağıdaki kodu kullanın.

GitHub aracılığıyla libxlsxwriter'ı yükleyin

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

Excel XLSX Elektronik Tablosu Oluşturmak için C API

Açık kaynaklı Libxlsxwriter API, yazılım geliştiricilerin C uygulamalarında Excel XLSX Elektronik Tabloları oluşturmasına ve değiştirmesine olanak tanır. API, bir Excel elektronik tablo dosyasında birden çok çalışma sayfasına metin, sayı, formül ve köprü yazmak için destek sağlar. Excel dosyalarından verileri kolayca içe veya dışa aktarabilir ve sayfaları birleştirebilir veya bölebilir, veri arayabilir ve çok daha fazlasını yapabilirsiniz.

Create ExcelLog via 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;
}

Excel Grafikleriyle Çalışma

Libxlsxwriter API, C komutlarını kullanarak Excel elektronik tablolarına Grafik eklemek ve değiştirmek için işlevsellik sağlamıştır. Grafikler oluşturmak ve yönetmek için grafik işaretleyici işlevlerini kullanabilirsiniz. Ayrıca verilerdeki eğilimleri belirtmek için bir eğilim çizgisi ve verilerdeki hata sınırlarını belirtmek için hata çubukları ekleyebilirsiniz. Ayrıca, çizilen veri noktalarının değerlerini belirtmek için bir grafik serisine veri etiketleri de verebilirsiniz. Grafik biçimlendirme özelliklerini herhangi bir grafik nesnesine kolayca uygulayabilirsiniz.

Excel Worksheet via 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);
}

Excel Veri Doğrulaması ile Çalışma

Veri doğrulama, geliştiricilerin kullanıcıların bir Excel hücresine ne girdiğini kontrol etmelerini sağlayan bir Excel özelliğidir. Örneğin, kullanıcıların 1 ile 6 arasında bir sayı girmesini kısıtlayabilir veya bir hücredeki metin girişinin 25 karakterden az olduğundan emin olabilirsiniz. Libxlsxwriter API, Herhangi Bir Değer, Tam Sayı, Ondalık, Liste, Tarih, Saat, Metin uzunluğu veya özel formül gibi kullanıcı girişini doğrulamak için çok sayıda seçenek sunar.

Ekran Özelleştir Integer 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 Makrolarıyla Çalışmak

Libxlsxwriter API, yazılım geliştiricilerine XLSX çalışma kitabına işlevler veya makrolar içeren bir VBA dosyası ekleme kolaylığı sağlar. İşlevler ve makrolar içeren Excel dosyaları bir XLSM uzantısı kullanmalıdır, aksi takdirde Excel şikayet eder ve muhtemelen dosyayı açmaz. VBA makroları normalde çalışma kitaplarına ve çalışma sayfası nesnelerine başvurur. VBA kod adları açıkça belirtilmemişse, libxlsxwriter ThisWorkbook ve Sheet1, Sheet2, vb. Excel varsayılanlarını kullanır.

BA Marcos to Excel Cookbook in C Apps

 
#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);
}
 Türkçe