Arbeitsblätter innerhalb und zwischen Arbeitsmappen mit JavaScript via C++ kopieren und verschieben
Manchmal benötigen Sie eine Anzahl von Arbeitsblättern mit gemeinsamer Formatierung und Dateneingabe. Wenn Sie z.B. mit Quartalsbudgets arbeiten, möchten Sie möglicherweise eine Arbeitsmappe mit Blättern erstellen, die dieselben Spaltenüberschriften, Zeilenüberschriften und Formeln enthalten. Es gibt eine Möglichkeit, dies zu tun: indem Sie ein Blatt erstellen und es dann dreimal kopieren.
Aspose.Cells for JavaScript via C++ unterstützt das Kopieren oder Verschieben von Arbeitsblättern innerhalb oder zwischen Arbeitsmappen. Arbeitsblätter einschließlich Daten, Formatierung, Tabellen, Matrizen, Diagrammen, Bildern und anderen Objekten werden mit höchster Präzision kopiert.
Arbeitsblätter kopieren und verschieben
Ein Arbeitsblatt innerhalb einer Arbeitsmappe kopieren
Die Anfangsschritte sind für alle Beispiele gleich.
- Erstellen Sie zwei Arbeitsmappen mit einigen Daten in Microsoft Excel. Für dieses Beispiel haben wir zwei neue Arbeitsmappen in Microsoft Excel erstellt und einige Daten in die Arbeitsblätter eingegeben.
- FirstWorkbook.xlsx (3 Tabellenblätter).
- SecondWorkbook.xlsx (1 Tabellenblatt).
- Laden Sie Aspose.Cells herunter und installieren Sie es:
- Laden Sie Aspose.Cells for JavaScript via C++ herunter.
- Installieren Sie es auf Ihrem Entwicklungscomputer. Alle Aspose Komponenten funktionieren nach der Installation im Evaluierungsmodus. Der Evaluierungsmodus hat kein Zeitlimit und fügt nur Wasserzeichen in erstellte Dokumente ein.
- Ein Projekt erstellen:
- Starten Sie Ihre Entwicklungsumgebung.
- Erstellen Sie eine neue Konsolenanwendung.
- Fügen Sie Verweise hinzu:
- Fügen Sie dem Projekt einen Verweis auf Aspose.Cells hinzu. Fügen Sie beispielsweise eine Referenz zu …\Program Files\Aspose\Aspose.Cells\Bin\NodeJs\Aspose.Cells.dll hinzu
- Kopieren Sie das Tabellenblatt innerhalb einer Arbeitsmappe. Das erste Beispiel kopiert das erste Tabellenblatt (Kopie) innerhalb von FirstWorkbook.xlsx.
Beim Ausführen des Codes wird das Arbeitsblatt namens Kopie innerhalb von FirstWorkbook.xlsx mit dem Namen Last Sheet kopiert.
<!DOCTYPE html>
<html>
<head>
<title>Copy Worksheet Example</title>
</head>
<body>
<h1>Copy Worksheet 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');
const resultDiv = document.getElementById('result');
if (!fileInput.files.length) {
resultDiv.innerHTML = '<p style="color: red;">Please select an Excel file.</p>';
return;
}
const file = fileInput.files[0];
const arrayBuffer = await file.arrayBuffer();
// Opening the Excel file through the file stream
const workbook = new Workbook(new Uint8Array(arrayBuffer));
// Copy the first sheet of the first book within the workbook
workbook.worksheets.get(2).copy(workbook.worksheets.get("Copy"));
// Saving the modified Excel file
const outputData = workbook.save(SaveFormat.Xlsx);
const blob = new Blob([outputData]);
const downloadLink = document.getElementById('downloadLink');
downloadLink.href = URL.createObjectURL(blob);
downloadLink.download = 'FirstWorkbookCopied_out.xlsx';
downloadLink.style.display = 'block';
downloadLink.textContent = 'Download Modified Excel File';
resultDiv.innerHTML = '<p style="color: green;">Worksheet copied successfully! Click the download link to get the modified file.</p>';
});
</script>
</html>
Verschieben eines Arbeitsblatts innerhalb eines Arbeitsmappes
Der untenstehende Code zeigt, wie man ein Arbeitsblatt von einer Position in einer Arbeitsmappe an eine andere verschiebt. Das Ausführen des Codes verschiebt das Arbeitsblatt namens Verschieben vom Index 1 auf den Index 2 in FirstWorkbook.xlsx.
<!DOCTYPE html>
<html>
<head>
<title>Aspose.Cells Example</title>
</head>
<body>
<h1>Move Worksheet 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();
// Instantiating a Workbook object from the uploaded file
const workbook = new Workbook(new Uint8Array(arrayBuffer));
// Move the first sheet to index 1
const worksheets = workbook.worksheets;
const worksheet = worksheets.get(0);
worksheet.moveTo(1);
// Saving the modified Excel file and offering it for download
const outputData = workbook.save(SaveFormat.Xlsx);
const blob = new Blob([outputData]);
const downloadLink = document.getElementById('downloadLink');
downloadLink.href = URL.createObjectURL(blob);
downloadLink.download = 'FirstWorkbookMoved_out.xlsx';
downloadLink.style.display = 'block';
downloadLink.textContent = 'Download Modified Excel File';
document.getElementById('result').innerHTML = '<p style="color: green;">Worksheet moved successfully! Click the download link to get the modified file.</p>';
});
</script>
</html>
Kopieren eines Arbeitsblatts zwischen Arbeitsmappen
Beim Ausführen des Codes wird das Arbeitsblatt namens Copy in SecondWorkbook.xlsx mit dem Namen Sheet2 kopiert.
<!DOCTYPE html>
<html>
<head>
<title>Aspose.Cells Example</title>
<meta charset="utf-8" />
</head>
<body>
<h1>Copy Worksheets Between Workbooks</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 } = 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 () => {
// Create two workbooks
const excelWorkbook3 = new Workbook();
const excelWorkbook4 = new Workbook();
// Create source worksheet
excelWorkbook3.worksheets.add("Copy");
// Add new worksheet into second Workbook
excelWorkbook4.worksheets.add();
// Copy the first sheet of the first book into second book.
excelWorkbook4.worksheets.get(1).copy(excelWorkbook3.worksheets.get("Copy"));
// Save the file.
const outputData = excelWorkbook4.save(SaveFormat.Xlsx);
const blob = new Blob([outputData]);
const downloadLink = document.getElementById('downloadLink');
downloadLink.href = URL.createObjectURL(blob);
downloadLink.download = 'CopyWorksheetsBetweenWorkbooks_out.xlsx';
downloadLink.style.display = 'block';
downloadLink.textContent = 'Download Modified Excel File';
document.getElementById('result').innerHTML = '<p style="color: green;">Worksheets copied successfully! Click the download link to get the modified file.</p>';
});
</script>
</html>
Verschieben eines Arbeitsblatts zwischen Arbeitsmappen
Das Ausführen des Codes verschiebt das Arbeitsblatt namens Verschieben von FirstWorkbook.xlsx nach SecondWorkbook.xlsx mit dem Namen Blatt3.
<!DOCTYPE html>
<html>
<head>
<title>Aspose.Cells Example</title>
</head>
<body>
<h1>Move Worksheets Example</h1>
<input type="file" id="fileInput" accept=".xls,.xlsx,.csv" />
<button id="runExample">Run Example</button>
<a id="downloadLink1" style="display: none; margin-right: 10px;">Download First Workbook</a>
<a id="downloadLink2" style="display: none;">Download Second Workbook</a>
<div id="result"></div>
</body>
<script src="aspose.cells.js.min.js"></script>
<script type="text/javascript">
const { Workbook, SaveFormat } = 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 () => {
// Create new workbooks instead of opening existing files
const excelWorkbook5 = new Workbook();
const excelWorkbook6 = new Workbook();
// Add New Worksheet
excelWorkbook6.worksheets.add();
// Copy the sheet from first book into second book.
excelWorkbook6.worksheets.get(0).copy(excelWorkbook5.worksheets.get(0));
// Remove the copied worksheet from first workbook
excelWorkbook5.worksheets.removeAt(0);
// Save the first workbook
const outputData1 = excelWorkbook5.save(SaveFormat.Xlsx);
const blob1 = new Blob([outputData1]);
const downloadLink1 = document.getElementById('downloadLink1');
downloadLink1.href = URL.createObjectURL(blob1);
downloadLink1.download = 'FirstWorkbookWithMove_out.xlsx';
downloadLink1.style.display = 'inline';
downloadLink1.textContent = 'Download FirstWorkbookWithMove_out.xlsx';
// Save the second workbook
const outputData2 = excelWorkbook6.save(SaveFormat.Xlsx);
const blob2 = new Blob([outputData2]);
const downloadLink2 = document.getElementById('downloadLink2');
downloadLink2.href = URL.createObjectURL(blob2);
downloadLink2.download = 'SecondWorkbookWithMove_out.xlsx';
downloadLink2.style.display = 'inline';
downloadLink2.textContent = 'Download SecondWorkbookWithMove_out.xlsx';
document.getElementById('result').innerHTML = '<p style="color: green;">Workbooks processed successfully. Click the download links to retrieve the files.</p>';
});
</script>
</html>