Add Pivot Connection with JavaScript via C++
Contents
[
Hide
]
Possible Usage Scenarios
If you want to associate a slicer and pivot table in Excel, you need to right-click the slicer and select “Report Connections…” item. In the option list, you can operate on the check box. Similarly, if you want to associate a slicer and pivot table using Aspose.Cells API programmatically, please use the Slicer.addPivotConnection(PivotTable pivot) method. It will associate the slicer and pivot table.
Associate Slicer and PivotTable
The following sample code loads the sample Excel file that contains an existing slicer. It accesses the slicer and then associates the slicer and pivot table. Finally, it saves the workbook as output Excel file.
Sample Code
<!DOCTYPE html>
<html>
<head>
<title>Add Pivot Connection Example</title>
</head>
<body>
<h1>Add Pivot Connection Example</h1>
<input type="file" id="fileInput" accept=".xls,.xlsx,.csv" />
<button id="runExample">Run Example</button>
<a id="downloadLink" style="display: none;">Download Result</a>
<div id="result"></div>
</body>
<script src="aspose.cells.js.min.js"></script>
<script type="text/javascript">
const { Workbook, SaveFormat, Utils } = AsposeCells;
AsposeCells.onReady({
license: "/lic/aspose.cells.enc",
fontPath: "/fonts/",
fontList: [
"arial.ttf",
"NotoSansSC-Regular.ttf"
]
}).then(() => {
console.log("Aspose.Cells initialized");
});
document.getElementById('runExample').addEventListener('click', async () => {
const fileInput = document.getElementById('fileInput');
if (!fileInput.files.length) {
document.getElementById('result').innerHTML = '<p style="color: red;">Please select an Excel file.</p>';
return;
}
const file = fileInput.files[0];
const arrayBuffer = await file.arrayBuffer();
const workbook = new Workbook(new Uint8Array(arrayBuffer));
const worksheet = workbook.worksheets.get(0);
const pivotTable = worksheet.pivotTables.get(0);
const slicer = worksheet.slicers.get(0);
slicer.addPivotConnection(pivotTable);
const outputData = workbook.save(SaveFormat.Xlsx);
const blob = new Blob([outputData]);
const downloadLink = document.getElementById('downloadLink');
downloadLink.href = URL.createObjectURL(blob);
downloadLink.download = 'add-pivot-connection-out.xlsx';
downloadLink.style.display = 'block';
downloadLink.textContent = 'Download Modified Excel File';
document.getElementById('result').innerHTML = '<p style="color: green;">Pivot connection added successfully! Click the download link to get the modified file.</p>';
});
</script>
</html>