Proteggi e annulla la protezione dei file Excel

Microsoft Excel è un popolare software per la gestione dei dati nelle organizzazioni. È principalmente dovuto alle sue funzionalità avanzate di manipolazione e rappresentazione dei dati. In questa era tecnologica, i documenti vengono condivisi virtualmente invece delle copie stampate. Questi file possono contenere dati complessi e sensibili. Quindi, per mantenere l’integrità di tali file, potrebbe essere necessario proteggerli dalle modifiche. Le funzionalità di protezione di Excel sono utili per questo scopo. In questo articolo imparerai come proteggere e rimuovere la protezione dei file Excel a livello di codice usando C++.

API C++ per proteggere e rimuovere la protezione dei file Excel - Download gratuito

Aspose.Cells for C++ è una libreria C++ nativa che consente di manipolare file Excel senza richiedere l’installazione di Microsoft Excel. Pertanto, viene utilizzato per automatizzare molti flussi di lavoro di Excel. L’API fornisce una serie di funzioni utili, inclusa la protezione e la rimozione della protezione dei file Excel. Puoi installare l’API tramite NuGet o scaricarla direttamente dalla sezione Download.

PM> Install-Package Aspose.Cells.Cpp

Proteggi i file Excel usando C++

Aspose.Cells per C++ fornisce i seguenti tipi di protezione per la protezione dei file Excel.

  • Tutto: protegge tutti i dati in modo che l’utente non possa modificare nulla.
  • Contenuti: protegge il contenuto del foglio di lavoro.
  • Oggetti: protegge gli oggetti nel foglio di lavoro in modo che l’utente non possa modificare gli oggetti del disegno.
  • Scenari: proteggere gli scenari nel foglio di lavoro.
  • Struttura: protegge la struttura della cartella di lavoro.
  • Windows: protegge le finestre salvate dalle modifiche.
  • Nessuno: nessuna protezione applicata.

Di seguito sono riportati i passaggi per proteggere i file Excel utilizzando C++.

L’esempio di codice seguente mostra come proteggere i file di Excel usando C++.

// Percorso della directory di origine.
StringPtr srcDir = new String("SourceDirectory\\");

// Percorso della directory di output.
StringPtr outDir = new String("OutputDirectory\\");

// Carica file Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFile.xlsx")));

// Proteggi la cartella di lavoro specificando il tipo di protezione
workbook->Protect(ProtectionType::ProtectionType_All, new String("12345"));

// Salva il file Excel
workbook->Save(outDir->StringAppend(new String("sampleExcelFile_protected_out.xlsx")));

Annulla la protezione della cartella di lavoro di Excel utilizzando C++

Di seguito sono riportati i passaggi per annullare la protezione di un file Excel.

L’esempio di codice seguente mostra come rimuovere la protezione dei file di Excel.

// Percorso della directory di origine.
StringPtr srcDir = new String("SourceDirectory\\");

// Percorso della directory di output.
StringPtr outDir = new String("OutputDirectory\\");

// Carica file Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFileProtected.xlsx")));

// Non proteggere la cartella di lavoro
workbook->Unprotect(new String("12345"));

// Imposta la password su null
workbook->GetISettings()->SetPassword(NULL);

// Salva il file Excel
workbook->Save(outDir->StringAppend(new String("sampleExcelFileUnprotected_out.xlsx")));

Proteggi il foglio di lavoro di Excel usando C++

Oltre a proteggere i file Excel, puoi anche proteggere i singoli fogli di lavoro. Utilizzare i seguenti passaggi per salvaguardare i fogli di lavoro di Excel.

L’esempio di codice seguente mostra come proteggere il foglio di lavoro di Excel.

// Percorso della directory di origine.
StringPtr srcDir = new String("SourceDirectory\\");

// Percorso della directory di output.
StringPtr outDir = new String("OutputDirectory\\");

// Carica file Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFile.xlsx")));

// Accesso al primo foglio di lavoro nel file Excel
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// Accedi alla protezione del foglio di lavoro
intrusive_ptr<IProtection> protection = worksheet->GetIProtection();

// I 3 metodi seguenti sono solo per Excel 2000 e formati precedenti
protection->SetAllowEditingContent(false);
protection->SetAllowEditingObject(false);
protection->SetAllowEditingScenario(false);

// Proteggi il primo foglio di lavoro con una password "12345"
protection->SetPassword(new String("12345"));

// Salva il file Excel
workbook->Save(outDir->StringAppend(new String("sampleExcelFile_protectedWorksheet_out.xlsx")));

Rimuovi la protezione del foglio di lavoro di Excel utilizzando C++

Di seguito sono riportati i passaggi per annullare la protezione dei fogli di lavoro di Excel.

L’esempio di codice seguente mostra come rimuovere la protezione del foglio di lavoro di Excel usando C++.

// Percorso della directory di origine.
StringPtr srcDir = new String("SourceDirectory\\");

// Percorso della directory di output.
StringPtr outDir = new String("OutputDirectory\\");

// Carica file Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFileProtectedWorksheet.xlsx")));

// Accesso al primo foglio di lavoro nel file Excel
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// Foglio di lavoro non protetto
worksheet->Unprotect(new String("12345"));

// Salva il file Excel
workbook->Save(outDir->StringAppend(new String("sampleExcelFileUnprotectedWorksheet_out.xlsx")));

Ottieni una licenza gratuita

Puoi provare l’API senza limitazioni di valutazione richiedendo una licenza temporanea gratuita.

Conclusione

In questo articolo, hai imparato come proteggere e rimuovere la protezione dei file Excel utilizzando C++. Oltre a ciò, hai anche imparato a proteggere i fogli di lavoro dalle modifiche. Aspose.Cells per C++ è una vasta API di manipolazione di Excel per automatizzare attività come la sostituzione del testo nelle celle o l’elaborazione di dati complessi rappresentati in grafici e grafici. Puoi esplorare l’API in dettaglio utilizzando la documentazione ufficiale.

Guarda anche