Das Kopieren von Zeilen und Spalten ist eine häufige Aufgabe, die beim Arbeiten mit Excel Dateien ausgeführt wird. Es kann Situationen geben, in denen Sie Zeilen oder Spalten in Excel Dateien programmgesteuert kopieren müssen. Für solche Fälle lernen Sie in diesem Artikel, wie Sie Zeilen und Spalten in Excel Dateien mit C++ kopieren.
- C++-API zum Kopieren von Zeilen und Spalten in Excel Dateien
- Kopieren Sie eine einzelne Zeile in eine Excel Datei mit C++
- Kopieren mehrerer Zeilen in einer Excel Datei mit C++
- Kopieren Sie eine einzelne Spalte in einer Excel Datei mit C++
- Kopieren mehrerer Spalten in einer Excel Datei mit C++
C++-API zum Kopieren von Zeilen und Spalten in Excel Dateien
Aspose.Cells for C++ ist eine native C++ Bibliothek, mit der Sie Excel Dateien erstellen, lesen und ändern können, ohne dass Microsoft Excel installiert sein muss. Die API bietet auch die Möglichkeit, Zeilen und Spalten in Excel Dateien zu kopieren. Sie können die API entweder über NuGet installieren oder direkt aus dem Abschnitt Downloads herunterladen.
PM> Install-Package Aspose.Cells.Cpp
Kopieren Sie eine einzelne Zeile in eine Excel Datei mit C++
Das Folgende ist das Bild der Excel quelldatei, die wir in den folgenden Beispielen verwenden werden.
Im Folgenden sind die Schritte zum Kopieren einer einzelnen Zeile in einer Excel Datei mit C++ beschrieben.
- Laden Sie die Excel Datei mit der Klasse IWorkbook.
- Rufen Sie das Arbeitsblatt ab, in das Sie die Zeile kopieren möchten.
- Kopieren Sie die Zeile mit CopyIRow(intrusiveptrAspose::Cells::ICells sourceCells, Aspose::Cells::Systems::Int32 sourceRowIndex, Aspose::Cells::Systems::Int32 destinationRowIndex) methode.
- Speichern Sie die Excel Datei mit IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String fileName) methode.
Der folgende Beispielcode zeigt, wie eine Zeile in einer Excel Datei mit C++ kopiert wird.
// Quellverzeichnispfad.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");
// Verzeichnispfad ausgeben.
StringPtr outDir = new String("OutputDirectory\\");
// Laden Sie die Eingabe-Excel Datei
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));
// Holen Sie sich das erste Arbeitsblatt
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Zeile kopieren
worksheet->GetICells()->CopyIRow(worksheet->GetICells(), 1, 15);
// Speichern Sie die Excel Datei
workbook->Save(outDir->StringAppend(new String("CopyRow_out.xlsx")));
Kopieren mehrerer Zeilen in einer Excel Datei mit C++
Um mehrere Zeilen zu kopieren, verwenden wir die Methode CopyIRows, die einen zusätzlichen Parameter akzeptiert, der die Gesamtzahl der zu kopierenden Zeilen angibt. Um mehrere Zeilen zu kopieren, befolgen Sie die unten angegebenen Schritte.
- Laden Sie die Excel Datei mit der Klasse IWorkbook.
- Rufen Sie das Arbeitsblatt ab, in das Sie die Zeilen kopieren möchten.
- Kopieren Sie die Zeilen mit CopyIRows(intrusiveptrAspose::Cells::ICells sourceCells, Aspose::Cells::Systems::Int32 sourceRowIndex, Aspose::Cells::Systems::Int32 destinationRowIndex, Aspose::Cells::Systems::Int32 rowNumber) methode.
- Speichern Sie die Excel Datei mit IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String fileName) methode.
Der folgende Beispielcode zeigt, wie mehrere Zeilen in einer Excel Datei mit C++ kopiert werden.
// Quellverzeichnispfad.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");
// Verzeichnispfad ausgeben.
StringPtr outDir = new String("OutputDirectory\\");
// Laden Sie die Eingabe-Excel Datei
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));
// Holen Sie sich das erste Arbeitsblatt
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Zeilen kopieren
worksheet->GetICells()->CopyIRows(worksheet->GetICells(), 1, 15, 3);
// Speichern Sie die Excel Datei
workbook->Save(outDir->StringAppend(new String("CopyRows_out.xlsx")));
Kopieren Sie eine einzelne Spalte in einer Excel Datei mit C++
Im Folgenden sind die Schritte zum Kopieren einer einzelnen Spalte in einer Excel Datei mit C++ beschrieben.
- Laden Sie die Excel Datei mit der Klasse IWorkbook.
- Rufen Sie das Arbeitsblatt ab, in das Sie die Spalte kopieren möchten.
- Kopieren Sie die Spalte mit CopyIColumn(intrusiveptrAspose::Cells::ICells sourceCells, Aspose::Cells::Systems::Int32 sourceColumnIndex, Aspose::Cells::Systems::Int32 destinationColumnIndex) methode.
- Speichern Sie die Excel Datei mit IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String fileName) methode.
Der folgende Beispielcode zeigt, wie eine einzelne Spalte in einer Excel Datei mit C++ kopiert wird.
// Quellverzeichnispfad.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");
// Verzeichnispfad ausgeben.
StringPtr outDir = new String("OutputDirectory\\");
// Laden Sie die Eingabe-Excel Datei
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));
// Holen Sie sich das erste Arbeitsblatt
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Spalte kopieren
worksheet->GetICells()->CopyIColumn(worksheet->GetICells(), 0, 6);
// Speichern Sie die Excel Datei
workbook->Save(outDir->StringAppend(new String("CopyColumn_out.xlsx")));
Kopieren mehrerer Spalten in einer Excel Datei mit C++
Um mehrere Spalten zu kopieren, verwenden wir die Methode CopyIColumns, die einen zusätzlichen Parameter akzeptiert, der die Gesamtzahl der zu kopierenden Spalten angibt. Um mehrere Spalten zu kopieren, befolgen Sie die unten angegebenen Schritte.
- Laden Sie die Excel Datei mit der Klasse IWorkbook.
- Rufen Sie das Arbeitsblatt ab, in das Sie die Spalten kopieren möchten.
- Kopieren Sie die Spalten mit dem Befehl CopyIColumns(intrusiveptrAspose::Cells::ICells sourceCells, Aspose::Cells::Systems::Int32 sourceColumnIndex, Aspose::Cells::Systems::Int32 destinationColumnIndex, Aspose::Cells::Systems::Int32 columnNumber) methode.
- Speichern Sie die Excel Datei mit IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String fileName) methode.
Der folgende Beispielcode zeigt, wie mehrere Spalten in einer Excel Datei mit C++ kopiert werden.
// Quellverzeichnispfad.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");
// Verzeichnispfad ausgeben.
StringPtr outDir = new String("OutputDirectory\\");
// Laden Sie die Eingabe-Excel Datei
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));
// Holen Sie sich das erste Arbeitsblatt
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Spalten kopieren
worksheet->GetICells()->CopyIColumns(worksheet->GetICells(), 0, 6, 3);
// Speichern Sie die Excel Datei
workbook->Save(outDir->StringAppend(new String("CopyColumns_out.xlsx")));
Holen Sie sich eine kostenlose Lizenz
Um die API ohne Evaluierungseinschränkungen zu testen, können Sie eine kostenlose temporäre Lizenz anfordern.
Fazit
In diesem Artikel haben Sie gelernt, wie Sie Zeilen und Spalten in einer Excel Datei mit C++ kopieren. Die gemeinsam genutzten Codebeispiele zeigen, wie einzelne und mehrere Zeilen und Spalten in einer Excel Datei kopiert werden. Wir haben die Aspose.Cells for C++ API verwendet, um dies zu erreichen. Es ist eine robuste API, die viele zusätzliche Funktionen für die Arbeit mit Excel Dateien bietet. Sie können die API im Detail erkunden, indem Sie die offizielle Dokumentation besuchen. Bei Fragen können Sie uns gerne in unserem kostenlosen Support-Forum erreichen.