Accesso a una tabella da una cella e aggiunta di valori al suo interno usando offset di riga e colonna con C++

Il seguente screenshot mostra il file Excel di origine usato nel codice. Contiene la tabella vuota e evidenzia la cella D5 che si trova all’interno della tabella. Accederemo a questa tabella dalla cella D5 usando il metodo Cell.GetTable() e poi aggiungeremo i valori al suo interno usando entrambi i metodi Cell.PutValue() e ListObject.PutCellValue.

Esempio

Screenshots che confrontano i file di origine e di output

todo:image_alt_text

Lo screenshot seguente mostra il file Excel di output generato dal codice. Come puoi vedere, la cella D5 ha un valore e la cella F6 che si trova all’offset 2,2 della tabella ha un valore.

todo:image_alt_text

Codice C++ per accedere a una tabella da una cella e aggiungere valori al suo interno usando offset di riga e colonna

Il codice di esempio seguente carica il file Excel di origine come mostrato nello screenshot precedente e aggiunge valori all’interno della tabella e genera il file Excel di output come mostrato sopra.

#include <iostream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;

int main()
{
    Aspose::Cells::Startup();

    // For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C
    // Source directory path
    U16String srcDir(u"..\\Data\\01_SourceDirectory\\");
    // Output directory path
    U16String outDir(u"..\\Data\\02_OutputDirectory\\");

    // Create workbook from source Excel file
    Workbook workbook(srcDir + u"source.xlsx");

    // Access first worksheet
    Worksheet worksheet = workbook.GetWorksheets().Get(0);

    // Access cell D5 which lies inside the table
    Cell cell = worksheet.GetCells().Get(u"D5");

    // Put value inside the cell D5
    cell.PutValue(u"D5 Data");

    // Access the Table from this cell
    ListObject table = cell.GetTable();

    // Add some value using Row and Column Offset
    table.PutCellValue(2, 2, u"Offset [2,2]");

    // Save the workbook
    workbook.Save(outDir + u"output_out.xlsx");

    std::cout << "Workbook saved successfully." << std::endl;

    Aspose::Cells::Cleanup();
}