La copie de lignes et de colonnes est une tâche courante effectuée lors de l’utilisation de fichiers Excel. Dans certaines situations, vous devrez peut-être copier des lignes ou des colonnes dans des fichiers Excel par programmation. Dans de tels cas, cet article vous apprendra à copier des lignes et des colonnes dans des fichiers Excel à l’aide de C++.
- API C++ pour copier des lignes et des colonnes dans des fichiers Excel
- Copier une seule ligne dans un fichier Excel à l’aide de C++
- Copier plusieurs lignes dans un fichier Excel à l’aide de C++
- Copier une seule colonne dans un fichier Excel à l’aide de C++
- Copier plusieurs colonnes dans un fichier Excel à l’aide de C++
API C++ pour copier des lignes et des colonnes dans des fichiers Excel
Aspose.Cells for C++ est une bibliothèque C++ native qui vous permet de créer, lire et modifier des fichiers Excel sans nécessiter l’installation de Microsoft Excel. L’API offre également la possibilité de copier des lignes et des colonnes dans des fichiers Excel. Vous pouvez soit installer l’API via NuGet ou la télécharger directement à partir de la section Téléchargements.
PM> Install-Package Aspose.Cells.Cpp
Copier une seule ligne dans un fichier Excel à l’aide de C++
Voici l’image du fichier Excel source que nous utiliserons dans les exemples suivants.
Voici les étapes pour copier une seule ligne dans un fichier Excel à l’aide de C++.
- Chargez le fichier Excel à l’aide de la classe IWorkbook.
- Récupérez la feuille de calcul dans laquelle vous souhaitez copier la ligne.
- Copiez la ligne à l’aide de CopyIRow(intrusiveptrAspose::Cells::ICells sourceCells, Aspose::Cells::Systems::Int32 sourceRowIndex, Aspose::Cells::Systems::Int32 destinationRowIndex) méthode.
- Enregistrez le fichier Excel à l’aide de IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String nom_fichier) méthode.
L’exemple de code suivant montre comment copier une ligne dans un fichier Excel à l’aide de C++.
// Chemin du répertoire source.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");
// Chemin du répertoire de sortie.
StringPtr outDir = new String("OutputDirectory\\");
// Charger le fichier Excel d'entrée
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));
// Obtenir la première feuille de calcul
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Copier la ligne
worksheet->GetICells()->CopyIRow(worksheet->GetICells(), 1, 15);
// Enregistrez le fichier Excel
workbook->Save(outDir->StringAppend(new String("CopyRow_out.xlsx")));
Copier plusieurs lignes dans un fichier Excel à l’aide de C++
Afin de copier plusieurs lignes, nous utiliserons la méthode CopyIRows qui accepte un paramètre supplémentaire indiquant le nombre total de lignes à copier. Pour copier plusieurs lignes, suivez les étapes ci-dessous.
- Chargez le fichier Excel à l’aide de la classe IWorkbook.
- Récupérez la feuille de calcul dans laquelle vous souhaitez copier les lignes.
- Copiez les lignes à l’aide de CopyIRows(intrusiveptrAspose::Cells::ICells sourceCells, Aspose::Cells::Systems::Int32 sourceRowIndex, Aspose::Cells::Systems::Int32 destinationRowIndex, Aspose::Cells::Systems::Int32 rowNumber) méthode.
- Enregistrez le fichier Excel à l’aide de IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String nom_fichier) méthode.
L’exemple de code suivant montre comment copier plusieurs lignes dans un fichier Excel à l’aide de C++.
// Chemin du répertoire source.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");
// Chemin du répertoire de sortie.
StringPtr outDir = new String("OutputDirectory\\");
// Charger le fichier Excel d'entrée
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));
// Obtenir la première feuille de calcul
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Copier des lignes
worksheet->GetICells()->CopyIRows(worksheet->GetICells(), 1, 15, 3);
// Enregistrez le fichier Excel
workbook->Save(outDir->StringAppend(new String("CopyRows_out.xlsx")));
Copier une seule colonne dans un fichier Excel à l’aide de C++
Voici les étapes pour copier une seule colonne dans un fichier Excel à l’aide de C++.
- Chargez le fichier Excel à l’aide de la classe IWorkbook.
- Récupérez la feuille de calcul dans laquelle vous souhaitez copier la colonne.
- Copiez la colonne à l’aide de CopyIColumn(intrusiveptrAspose::Cells::ICells sourceCells, Aspose::Cells::Systems::Int32 sourceColumnIndex, Aspose::Cells::Systems::Int32 destinationColumnIndex) méthode.
- Enregistrez le fichier Excel à l’aide de IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String nom_fichier) méthode.
L’exemple de code suivant montre comment copier une seule colonne dans un fichier Excel à l’aide de C++.
// Chemin du répertoire source.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");
// Chemin du répertoire de sortie.
StringPtr outDir = new String("OutputDirectory\\");
// Charger le fichier Excel d'entrée
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));
// Obtenir la première feuille de calcul
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Copier la colonne
worksheet->GetICells()->CopyIColumn(worksheet->GetICells(), 0, 6);
// Enregistrez le fichier Excel
workbook->Save(outDir->StringAppend(new String("CopyColumn_out.xlsx")));
Copier plusieurs colonnes dans un fichier Excel à l’aide de C++
Afin de copier plusieurs colonnes, nous utiliserons la méthode CopyIColumns qui accepte un paramètre supplémentaire indiquant le nombre total de colonnes à copier. Pour copier plusieurs colonnes, suivez les étapes ci-dessous.
- Chargez le fichier Excel à l’aide de la classe IWorkbook.
- Récupérez la feuille de calcul dans laquelle vous souhaitez copier les colonnes.
- Copiez les colonnes à l’aide de CopyIColumns(intrusiveptrAspose::Cells::ICells sourceCells, Aspose::Cells::Systems::Int32 sourceColumnIndex, Aspose::Cells::Systems::Int32 destinationColumnIndex, Aspose::Cells::Systems::Int32 columnNumber) méthode.
- Enregistrez le fichier Excel à l’aide de IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String nom_fichier) méthode.
L’exemple de code suivant montre comment copier plusieurs colonnes dans un fichier Excel à l’aide de C++.
// Chemin du répertoire source.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");
// Chemin du répertoire de sortie.
StringPtr outDir = new String("OutputDirectory\\");
// Charger le fichier Excel d'entrée
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));
// Obtenir la première feuille de calcul
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Copier les colonnes
worksheet->GetICells()->CopyIColumns(worksheet->GetICells(), 0, 6, 3);
// Enregistrez le fichier Excel
workbook->Save(outDir->StringAppend(new String("CopyColumns_out.xlsx")));
Obtenez une licence gratuite
Afin d’essayer l’API sans limitation d’évaluation, vous pouvez demander une licence temporaire gratuite.
Conclusion
Dans cet article, vous avez appris à copier des lignes et des colonnes dans un fichier Excel à l’aide de C++. Les exemples de code partagé montrent comment copier des lignes et des colonnes uniques et multiples dans un fichier Excel. Nous avons utilisé l’API Aspose.Cells for C++ pour y parvenir. Il s’agit d’une API robuste qui fournit de nombreuses fonctionnalités supplémentaires pour travailler avec des fichiers Excel. Vous pouvez explorer l’API en détail en visitant la documentation officielle. En cas de questions, n’hésitez pas à nous contacter sur notre forum d’assistance gratuit.