![Protéger et déprotéger les fichiers Excel](images/Protect-Excel-Files-C.jpg#center)
Microsoft Excel est un logiciel populaire pour la gestion des données dans les organisations. Cela est principalement dû à ses fonctionnalités avancées de manipulation et de représentation des données. En cette ère technologique, les documents sont partagés virtuellement au lieu de copies imprimées. Ces fichiers peuvent contenir des données complexes et sensibles. Ainsi, pour maintenir l’intégrité de ces fichiers, vous devrez peut-être les protéger contre toute modification. Les fonctions de protection d’Excel sont utiles à cette fin. Dans cet article, vous apprendrez comment protéger et déprotéger des fichiers Excel par programmation à l’aide de C++.
- API C++ pour protéger et déprotéger les fichiers Excel
- Protégez les fichiers Excel à l’aide de C++
- Déprotéger le classeur Excel à l’aide de C++
- Protéger la feuille de calcul Excel à l’aide de C++
- Déprotéger la feuille de calcul Excel à l’aide de C++
- Obtenez une licence gratuite
API C++ pour protéger et déprotéger les fichiers Excel - Téléchargement gratuit
Aspose.Cells for C++ est une bibliothèque C++ native qui vous permet de manipuler des fichiers Excel sans nécessiter l’installation de Microsoft Excel. Par conséquent, il est utilisé pour automatiser de nombreux workflows Excel. L’API fournit un ensemble de fonctionnalités utiles, notamment la protection et la déprotection 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
Protégez les fichiers Excel à l’aide de C++
Aspose.Cells for C++ fournit les types de protection suivants pour protéger les fichiers Excel.
- Tout : Protégez l’ensemble des données afin que l’utilisateur ne puisse rien modifier.
- Contenu : Protégez le contenu de la feuille de calcul.
- Objets : protégez les objets de la feuille de calcul afin que l’utilisateur ne puisse pas modifier les objets de dessin.
- Scénarios : protégez les scénarios dans la feuille de calcul.
- Structure : Protégez la structure du classeur.
- Windows : Protège les fenêtres enregistrées contre toute modification.
- Aucun : Aucune protection appliquée.
Voici les étapes de protection des fichiers Excel à l’aide de C++.
- Chargez le fichier Excel à l’aide de la classe IWorkbook.
- Protégez le fichier avec IWorkbook->Protect(Aspose::Cells::ProtectionType protectionType, intrusiveptrAspose::Cells::Systems::String mot de passe) méthode.
- Enregistrez le fichier Excel protégé avec IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String nom_fichier) méthode.
L’exemple de code suivant montre comment protéger des fichiers Excel à l’aide de C++.
// Chemin du répertoire source.
StringPtr srcDir = new String("SourceDirectory\\");
// Chemin du répertoire de sortie.
StringPtr outDir = new String("OutputDirectory\\");
// Charger le fichier Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFile.xlsx")));
// Protéger le classeur en spécifiant le type de protection
workbook->Protect(ProtectionType::ProtectionType_All, new String("12345"));
// Enregistrez le fichier Excel
workbook->Save(outDir->StringAppend(new String("sampleExcelFile_protected_out.xlsx")));
Déprotéger le classeur Excel à l’aide de C++
Voici les étapes pour déprotéger un fichier Excel.
- Chargez le fichier Excel à l’aide de la classe IWorkbook.
- Déprotégez le fichier avec IWorkbook->Unprotect(intrusiveptrAspose::Cells::Systems::String mot de passe) méthode.
- Définissez le mot de passe sur NULL en utilisant IWorkbook->GetISettings()->SetPassword(intrusiveptrAspose::Cells::Systems::String valeur) méthode.
- Enregistrez le fichier Excel non protégé avec IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String nom_fichier) méthode.
L’exemple de code suivant montre comment déprotéger des fichiers Excel.
// Chemin du répertoire source.
StringPtr srcDir = new String("SourceDirectory\\");
// Chemin du répertoire de sortie.
StringPtr outDir = new String("OutputDirectory\\");
// Charger le fichier Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFileProtected.xlsx")));
// Déprotéger le classeur
workbook->Unprotect(new String("12345"));
// Définir le mot de passe sur null
workbook->GetISettings()->SetPassword(NULL);
// Enregistrez le fichier Excel
workbook->Save(outDir->StringAppend(new String("sampleExcelFileUnprotected_out.xlsx")));
Protéger la feuille de calcul Excel à l’aide de C++
En plus de protéger les fichiers Excel, vous pouvez également protéger des feuilles de calcul individuelles. Veuillez suivre les étapes suivantes pour sauvegarder les feuilles de calcul Excel.
- Tout d’abord, chargez le fichier Excel à l’aide de la classe IWorkbook.
- Obtenez la feuille de calcul que vous souhaitez protéger de la collection de feuilles de calcul à l’aide de la méthode IWorkbook->GetIWorksheets()->GetObjectByIndex( Aspose::Cells::Systems::Int32 index).
- Obtenez la protection de la feuille de calcul à l’aide de la méthode IWorksheet->GetIProtection().
- Définissez les options de protection telles que SetAllowEditingContent (bool value).
- Définissez le mot de passe à l’aide de IProtection->SetPassword (intrusiveptrAspose::Cells::Systems::String valeur) méthode.
- Enfin, enregistrez le fichier Excel avec la feuille de calcul protégée en utilisant IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String nom_fichier) méthode.
L’exemple de code suivant montre comment protéger une feuille de calcul Excel.
// Chemin du répertoire source.
StringPtr srcDir = new String("SourceDirectory\\");
// Chemin du répertoire de sortie.
StringPtr outDir = new String("OutputDirectory\\");
// Charger le fichier Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFile.xlsx")));
// Accéder à la première feuille de calcul du fichier Excel
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Accéder à la protection de la feuille de calcul
intrusive_ptr<IProtection> protection = worksheet->GetIProtection();
// Les 3 méthodes suivantes sont uniquement pour Excel 2000 et les formats antérieurs
protection->SetAllowEditingContent(false);
protection->SetAllowEditingObject(false);
protection->SetAllowEditingScenario(false);
// Protégez la première feuille de calcul avec un mot de passe "12345"
protection->SetPassword(new String("12345"));
// Enregistrez le fichier Excel
workbook->Save(outDir->StringAppend(new String("sampleExcelFile_protectedWorksheet_out.xlsx")));
Déprotéger la feuille de calcul Excel à l’aide de C++
Voici les étapes pour déprotéger les feuilles de calcul Excel.
- Chargez le fichier Excel à l’aide de la classe IWorkbook.
- Accédez à la feuille de calcul protégée à l’aide de la méthode IWorkbook->GetIWorksheets()->GetObjectByIndex( Aspose::Cells::Systems::Int32 index).
- Déprotégez la feuille de calcul à l’aide de IWorksheet->Unprotect(intrusiveptrAspose::Cells::Systems::String mot de passe) méthode.
- Enfin, enregistrez le fichier Excel avec la feuille de calcul non protégée en utilisant IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String nom_fichier) méthode.
L’exemple de code suivant montre comment déprotéger une feuille de calcul Excel à l’aide de C++.
// Chemin du répertoire source.
StringPtr srcDir = new String("SourceDirectory\\");
// Chemin du répertoire de sortie.
StringPtr outDir = new String("OutputDirectory\\");
// Charger le fichier Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFileProtectedWorksheet.xlsx")));
// Accéder à la première feuille de calcul du fichier Excel
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Déprotéger la feuille de calcul
worksheet->Unprotect(new String("12345"));
// Enregistrez le fichier Excel
workbook->Save(outDir->StringAppend(new String("sampleExcelFileUnprotectedWorksheet_out.xlsx")));
Obtenez une licence gratuite
Vous pouvez essayer l’API sans limites d’évaluation en demandant une licence temporaire gratuite.
Conclusion
Dans cet article, vous avez appris comment protéger et déprotéger des fichiers Excel à l’aide de C++. En plus de cela, vous avez également appris à protéger les feuilles de calcul contre les modifications. Aspose.Cells for C++ est une vaste API de manipulation d’Excel pour automatiser des tâches telles que le remplacement de texte dans des cellules ou le traitement de données complexes représentées dans des graphiques et des tableaux. Vous pouvez explorer l’API en détail en utilisant la documentation officielle.