C++'da bir spreadsheet veri modeli nasıl oluşturulur ve popülerleştirilir

C++'da bir spreadsheet veri modeli nasıl oluşturulur ve popülerleştirilir

Bu kılavuz bir çalışma kitabı nasıl oluşturulur, değerler ve formülleri ile hücreleri yerleştirmek, stiller uygulamak ve C++ kütüphanesi için Aspose.Cells FOSS kullanarak bir spreadsheet dosyası olarak kaydetmek. Workbook, Worksheet, Cell,ve Style.

Adım adım rehberlik

Adım 1: Yapıyı Kurun

CMake projenize Cells FOSS kütüphanesini ekleyin ve bağlantı kurun. Aspose.Cells.Foss.Cpp Hedef :

cmake_minimum_required(VERSION 3.15)
project(CreateSpreadsheet CXX)
set(CMAKE_CXX_STANDARD 17)

add_subdirectory(path/to/Aspose.Cells-FOSS-for-Cpp)
add_executable(CreateSpreadsheet main.cpp)
target_link_libraries(CreateSpreadsheet PRIVATE Aspose.Cells.Foss.Cpp)

Adım 2: Başlıkları içerir ve Namespace ayarlayın

Sınıflardaki başlıkları da içerir. aspose/cells_foss/ Kullanılan her sınıf için (Workbook.h, Worksheet.h, Cell.h, Style.h, Font.h, Color.h, CellArea.hSonra açıldı Aspose::Cells_FOSS Adı Soyadı :

using namespace Aspose::Cells_FOSS;

Adım 3: Bir çalışma kitabı oluşturun ve sayfanın adını verin

Instantiate Workbook,İlk çalışma sayfası üzerinden alın GetWorksheets()[0],ve görüntü adı koyun:

int main() {
    Workbook workbook;
    Worksheet& sheet = workbook.GetWorksheets()[0];
    sheet.SetName("Sales");
    return 0;
}

Adım 4: Hücre Değerleri Eklemek

Call GetCells()["A1"].PutValue() metin çubukları, sayısal değerler ve booleanlar adresi ile bireysel hücrelere yazmak için:

sheet.GetCells()["A1"].PutValue("Product");
sheet.GetCells()["B1"].PutValue("Price");
sheet.GetCells()["A2"].PutValue("Widget");
sheet.GetCells()["B2"].PutValue(9.99);
sheet.GetCells()["A3"].PutValue("Gadget");
sheet.GetCells()["B3"].PutValue(24.99);

5. Bir formül oluşturun

Call SetFormula() Excel uyumlu bir formül çubuğunu kaydetmek için bir hücre; dosya açıldığında formülü Excel tarafından değerlendirilir:

sheet.GetCells()["B4"].SetFormula("=SUM(B2:B3)");

Adım 6: Hücre Stülasyonu Uygulayın

Stili ile birlikte yapın Cell::GetStyle(),değiştirmek ve uygulamak için, Cell::SetStyle(style):

Style headerStyle = sheet.GetCells()["A1"].GetStyle();
Font font;
font.SetBold(true);
font.SetColor(Color::FromArgb(255, 255, 255, 255));
headerStyle.SetFont(font);
headerStyle.SetPattern(FillPattern::Solid);
headerStyle.SetForegroundColor(Color::FromArgb(255, 34, 120, 212));
sheet.GetCells()["A1"].SetStyle(headerStyle);
sheet.GetCells()["B1"].SetStyle(headerStyle);

Adım 7: Hücreler Birleşir

Kullanım Cells::Merge Bir hücreye bir aralığı birleştirmek için:

CellArea titleArea = CellArea::CreateCellArea("A1", "B1");
sheet.GetCells().Merge(0, 0, 1, 2);

Adım 8: Çalışma Kitabı Kurtarmak

Call workbook.Save() bir dosya adı ile spreadsheet XLSX dosyası olarak yazmak için, sonra arama Dispose() Kaynakları serbest bırakmak için:

workbook.Save("sales.xlsx");
workbook.Dispose();

Toplam Sorunlar ve Çözümler

Tasarruf sonrası uygulanan bir yöntem değil Her zaman arama Cell::SetStyle(style) Giriş yaptırma yöntemi değiştirme, değişiklikler doğrudan uygulanmaz; açıkça geri ayarlamak gerekir.

Formül, kelimenin tam anlamıyla çizgisi olarak kaydedilir. Kullanım SetFormula("=SUM(...)") Hayır PutValue("=SUM(...)"). PutValue Bu, argümanı kelime olarak değil formül olarak ele alır.

Doğru şekilde yapılmaz bir hücre Birleşme parametrelerinin (kırışıklık, sütun, rowCount, kolonCounta) doğru bir şekilde planlanan aralığı genişletilmesini sağlayın.

Yapımdan sonra iş kitabı yok Bir default sayfa her zaman oluşturulur Workbook().Çağrı GetWorksheets()[0] Ona erişmek için.

Çağrı Yapılmaması Gerekenler Her zaman arama workbook.Dispose() özellikle uzun süreli uygulamalarda kaynakları serbest bırakmak.

Sıkça Sorulan Sorular

Bir çalışma kitabına birden fazla çalışma sayfası ekleyebilir miyim?

Evet Kullanım Workbook::GetWorksheets() Koleksiyonu erişmek ve sayfaları programlı olarak ekleyin. her sayfanın benzersiz bir adı olduğundan emin olun Workbook::EnsureUniqueSheetName().

Bir hücre için bir sayı biçimi nasıl ayarlanır?

Kullanım Style::SetNumberFormat(format) Çağrıdan Önce Cell::SetStyle(style).Format çubukları standart Excel numarası format sintax takip eder.

Aynı tarzı birçok hücreye uygulayabilir miyim?

Evet. bir kez tarzı alın, değiştirin, sonra arayın SetStyle(style) Her hedef hücresinde.

Formül kurtarıldığında değerlendirilir mi?

Formül değerlendirmesi Excel veya uyumlu bir okuyucu dosyayı açtığında gerçekleşir. kütüphane formülü hücre yazar.

Bir çalışma sayfası kaç satır ve sütun tutabilir?

Her çalışma sayfası, standart spreadsheet boyutlarına göre satır ve sütunların tam ağında verileri tutar.

See Also

 Türkçe