Excelファイルは、行と列の形式で小さいデータと大きいデータを格納するために使用されます。データストレージに加えて、グラフやチャートを使用した計算やデータ分析などの他の操作を実行できます。データは保護する価値があるため、MSExcelではExcelファイルを保護できます。この記事では、MSExcelファイルの保護をプログラムで自動化する方法について説明します。特に、Javaを使用してExcelファイルを保護および保護解除する方法を学習します。
- Excelファイルを保護するJavaAPI
- Javaを使用してExcelファイルを保護する
- Javaを使用してExcelファイルの保護を解除する
- Javaを使用してワークシートを保護する
- Javaを使用してワークシートの保護を解除する
- 無料ライセンスを取得する
Excelファイルを保護するJavaAPI
Aspose.Cells for Javaは、Javaアプリケーション内からExcelファイルを作成、編集、および変換するように設計された、よく知られたスプレッドシート操作APIです。 Aspose.Cellsは、他の基本的なExcel自動化機能と高度なExcel自動化機能に加えて、Excelファイルの保護をサポートしています。 ダウンロードAPIのJARを使用するか、次のMaven構成を使用してインストールできます。
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-cells</artifactId>
<version>20.12</version>
</dependency>
Javaを使用してExcelファイルを保護する
Aspose.Cells for Javaは、Excelブックを保護するために、次の保護タイプを提供します。
- 全て - User cannot modify anything
- コンテンツ - User cannot enter data
- オブジェクト - User cannot modify drawing objects
- シナリオ - User cannot modify saved scenarios
- 構造 - User cannot modify saved structure
- ウィンドウズ - User cannot modify saved windows
- なし - No protection
以下は、Aspose.Cells for Javaを使用してExcelファイルを保護するための手順です。
- Workbookクラスを使用してExcelファイルをロードします。
- Workbook.protect(ProtectionType, String)メソッドを使用して、Excelファイルを保護します。
- Workbook.save(String)メソッドを使用して保護されたファイルを保存します。
次のコードサンプルは、JavaでExcelファイルを保護する方法を示しています。
// Excelファイルを開きます
Workbook workbook = new Workbook("workbook.xlsx");
// 保護タイプを指定してブックを保護する
workbook.protect(ProtectionType.ALL, "12345");
// ファイルを保存します
workbook.save("workbook_protected.xlsx");
Javaを使用してExcelファイルの保護を解除する
以下は、Aspose.Cells for Javaを使用してパスワードで保護されたExcelファイルの保護を解除する手順です。
- Workbookクラスを使用してExcelファイルをロードします。
- Workbook.unprotect(String)メソッドを使用して、Excelファイルの保護を解除します。
- Workbook.save(String)メソッドを使用して、保護されていないExcelファイルを保存します。
次のコードサンプルは、JavaでExcelファイルの保護を解除する方法を示しています。
// Excelファイルを開きます
Workbook workbook = new Workbook("workbook_protected.xlsx");
// ブックの保護を解除する
workbook.unprotect("12345");
// パスワードをnullに設定
workbook.getSettings().setPassword(null);
// ファイルを保存します
workbook.save("workbook_unprotected.xlsx");
Javaを使用してExcelワークシートを保護する
ワークシートレベルで保護を適用することもできます。以下は、Aspose.Cells for Javaを使用してExcelワークシートを保護するための手順です。
- Workbookクラスを使用してExcelファイルをロードします。
- Workbook.getWorksheets().get(int)メソッドを使用して、Worksheetオブジェクトの特定のワークシートを取得します。
- Worksheet.getProtection()メソッドを使用して、ワークシート保護設定をProtectionオブジェクトに取得します。
- Protection.setPassword(String)メソッドを使用してパスワードを設定します。
- Workbook.save(String)メソッドを使用してExcelファイルを保存します。
次のコードサンプルは、Javaを使用してExcelワークシートを保護する方法を示しています。
// Excelファイルを開きます
Workbook workbook = new Workbook("workbook.xlsx");
// Excelファイルの最初のワークシートにアクセスする
WorksheetCollection worksheets = workbook.getWorksheets();
Worksheet worksheet = worksheets.get(0);
Protection protection = worksheet.getProtection();
// 次の3つの方法は、Excel2000以前の形式のみを対象としています。
protection.setAllowEditingContent(false);
protection.setAllowEditingObject(false);
protection.setAllowEditingScenario(false);
// 最初のワークシートをパスワード「1234」で保護します
protection.setPassword("1234");
// ファイルを保存します
workbook.save("Excel.xlsx");
Javaを使用してワークシートの保護を解除する
ワークシートの保護を解除する手順は、ワークシートを保護するのと同じです。唯一の違いは、Worksheet.unprotect(String)メソッドを使用することです。次のコードサンプルは、Javaを使用してExcelワークシートの保護を解除する方法を示しています。
// Excelファイルを開きます
Workbook workbook = new Workbook("workbook.xlsx");
// Excelファイルの最初のワークシートにアクセスする
WorksheetCollection worksheets = workbook.getWorksheets();
Worksheet worksheet = worksheets.get(0);
// ワークシートの保護を解除する
worksheet.unprotect("12345");
// ファイルを保存します
workbook.save("workbook_updated.xlsx");
無料ライセンスを取得する
評価の制限なしにAPIを試すために、無料の一時ライセンスを取得できます。
結論
この記事では、Javaを使用してExcelファイルを保護および保護解除する方法を学習しました。さらに、Excelブックの特定のワークシートを保護および保護解除する方法を見てきました。 ドキュメントを使用して、JavaExcel自動化APIの詳細を調べることができます。