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

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.

Quellarbeitsblatt

Im Folgenden sind die Schritte zum Kopieren einer einzelnen Zeile in einer Excel Datei mit C++ beschrieben.

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")));
Bild, das die kopierte Zeile zeigt

Bild, das die kopierte Zeile zeigt

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.

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")));
Bild mit den kopierten Zeilen

Bild mit den kopierten Zeilen

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.

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")));
Bild, das die kopierte Spalte zeigt

Bild, das die kopierte Spalte zeigt

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.

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")));
Bild mit den kopierten Spalten

Bild mit den kopierten Spalten

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.

Siehe auch