|
using namespace System;
using namespace EasyXLS;
using namespace EasyXLS::Constants;
using namespace EasyXLS::PivotTables;
int main()
{
Console::WriteLine("Tutorial 26\n----------\n");
ExcelDocument ^workbook = gcnew ExcelDocument(2, 1);
workbook->easy_getSheetAt(0)->setSheetName("First tab");
workbook->easy_getSheetAt(1)->setSheetName("Second tab");
workbook->easy_getSheetAt(2)->setSheetName("Pivot chart");
ExcelWorksheet ^xlsFirstTab = safe_cast<ExcelWorksheet^>(workbook->easy_getSheetAt(0));
ExcelTable ^xlsFirstTable = xlsFirstTab->easy_getExcelTable();
xlsFirstTable->easy_getCell(0,0)->setValue("Sale agent");
xlsFirstTable->easy_getCell(0,0)->setDataType(DataType::STRING);
xlsFirstTable->easy_getCell(0,1)->setValue("Sale country");
xlsFirstTable->easy_getCell(0,1)->setDataType(DataType::STRING);
xlsFirstTable->easy_getCell(0,2)->setValue("Month");
xlsFirstTable->easy_getCell(0,2)->setDataType(DataType::STRING);
xlsFirstTable->easy_getCell(0,3)->setValue("Year");
xlsFirstTable->easy_getCell(0,3)->setDataType(DataType::STRING);
xlsFirstTable->easy_getCell(0,4)->setValue("Sale amount");
xlsFirstTable->easy_getCell(0,4)->setDataType(DataType::STRING);
xlsFirstTable->easy_getRowAt(0)->setBold(true);
xlsFirstTable->easy_getCell(1,0)->setValue("John Down");
xlsFirstTable->easy_getCell(1,1)->setValue("USA");
xlsFirstTable->easy_getCell(1,2)->setValue("June");
xlsFirstTable->easy_getCell(1,3)->setValue("2010");
xlsFirstTable->easy_getCell(1,4)->setValue("550");
xlsFirstTable->easy_getCell(2,0)->setValue("Scott Valey");
xlsFirstTable->easy_getCell(2,1)->setValue("United Kingdom");
xlsFirstTable->easy_getCell(2,2)->setValue("June");
xlsFirstTable->easy_getCell(2,3)->setValue("2010");
xlsFirstTable->easy_getCell(2,4)->setValue("2300");
xlsFirstTable->easy_getCell(3,0)->setValue("John Down");
xlsFirstTable->easy_getCell(3,1)->setValue("USA");
xlsFirstTable->easy_getCell(3,2)->setValue("July");
xlsFirstTable->easy_getCell(3,3)->setValue("2010");
xlsFirstTable->easy_getCell(3,4)->setValue("3100");
xlsFirstTable->easy_getCell(4,0)->setValue("John Down");
xlsFirstTable->easy_getCell(4,1)->setValue("USA");
xlsFirstTable->easy_getCell(4,2)->setValue("June");
xlsFirstTable->easy_getCell(4,3)->setValue("2011");
xlsFirstTable->easy_getCell(4,4)->setValue("1050");
xlsFirstTable->easy_getCell(5,0)->setValue("John Down");
xlsFirstTable->easy_getCell(5,1)->setValue("USA");
xlsFirstTable->easy_getCell(5,2)->setValue("July");
xlsFirstTable->easy_getCell(5,3)->setValue("2011");
xlsFirstTable->easy_getCell(5,4)->setValue("2400");
xlsFirstTable->easy_getCell(6,0)->setValue("Steve Marlowe");
xlsFirstTable->easy_getCell(6,1)->setValue("France");
xlsFirstTable->easy_getCell(6,2)->setValue("June");
xlsFirstTable->easy_getCell(6,3)->setValue("2011");
xlsFirstTable->easy_getCell(6,4)->setValue("1200");
xlsFirstTable->easy_getCell(7,0)->setValue("Scott Valey");
xlsFirstTable->easy_getCell(7,1)->setValue("United Kingdom");
xlsFirstTable->easy_getCell(7,2)->setValue("June");
xlsFirstTable->easy_getCell(7,3)->setValue("2011");
xlsFirstTable->easy_getCell(7,4)->setValue("700");
xlsFirstTable->easy_getCell(8,0)->setValue("Scott Valey");
xlsFirstTable->easy_getCell(8,1)->setValue("United Kingdom");
xlsFirstTable->easy_getCell(8,2)->setValue("July");
xlsFirstTable->easy_getCell(8,3)->setValue("2011");
xlsFirstTable->easy_getCell(8,4)->setValue("360");
ExcelPivotTable ^xlsPivotTable = gcnew ExcelPivotTable();
xlsPivotTable->setName("Sales");
xlsPivotTable->setSourceRange("First tab!$A$1:$E$9",workbook);
xlsPivotTable->setLocation("A3:G15");
xlsPivotTable->addFieldToRowLabels("Sale agent");
xlsPivotTable->addFieldToColumnLabels("Year");
xlsPivotTable->addFieldToValues("Sale amount","Sale amount per year",PivotTable::SUBTOTAL_SUM);
xlsPivotTable->addFieldToReportFilter("Sale country");
xlsPivotTable->setOutlineForm();
xlsPivotTable->setStyle(PivotTable::PIVOT_STYLE_MEDIUM_9);
ExcelWorksheet ^xlsWorksheet = safe_cast<ExcelWorksheet^>(workbook->easy_getSheet("Second tab"));
xlsWorksheet->easy_addPivotTable(xlsPivotTable);
ExcelPivotChart ^xlsPivotChart1 = gcnew ExcelPivotChart();
xlsPivotChart1->setSize(600, 300);
xlsPivotChart1->setLeftUpperCorner("A10");
xlsPivotChart1->easy_setChartType(Chart::CHART_TYPE_PYRAMID_BAR);
xlsPivotChart1->getChartTitle()->setText("Sales");
xlsPivotChart1->setPivotTable(xlsPivotTable);
xlsWorksheet->easy_addPivotChart(xlsPivotChart1);
ExcelPivotChart ^xlsPivotChart2 = xlsPivotChart1->Clone();
xlsPivotChart2->setSize(970, 630);
ExcelChartSheet ^xlsChartSheet = safe_cast<ExcelChartSheet^>(workbook->easy_getSheet("Pivot chart"));
xlsChartSheet->easy_setExcelChart(xlsPivotChart2);
Console::WriteLine("Writing file C:\\Samples\\Tutorial26 - pivot chart in Excel.xlsx.");
workbook->easy_WriteXLSXFile("C:\\Samples\\Tutorial26 - pivot chart in Excel.xlsx");
String ^sError = workbook->easy_getError();
if (sError->Equals(""))
Console::Write("\nFile successfully created. Press Enter to Exit...");
else
Console::Write(String::Concat("\nError encountered: ", sError, "\nPress Enter to Exit..."));
delete workbook;
Console::ReadLine();
return 0;
}
|