GroupDocs を使用した Java での xlsx ファイルの読み取りと Excel の編集方法

Java アプリケーションから xlsx ファイル の内容を読み取り、セルを変更したり、ワークブック全体を再構築したりしたい場合は、ここが適切な場所です。このチュートリアルでは、GroupDocs.Editor for Java を使用してワークブックを開き、ワークシートを編集し、数式を保持し、マルチタブファイルを管理し、パスワードで保護されたファイルや非常に大きなスプレッドシートを処理する方法を説明します—サーバーに Microsoft Office をインストールする必要はありません。

クイック回答

  • パスワードで保護された Excel ファイルを編集できますか? はい – ドキュメントをロードするときにパスワードを指定するだけです。
  • GroupDocs.Editor は数式を保持しますか? もちろんです。数式は編集後も機能し続けます。
  • マルチシートの編集はサポートされていますか? ワークブック内の任意の数のワークシートを開き、変更し、保存できます。
  • 必要な Java バージョンは何ですか? Java 8 以上が推奨されます。
  • 本番環境でライセンスが必要ですか? 無料トライアル以外で使用する場合は、有効な GroupDocs.Editor for Java ライセンスが必要です。

Java のコンテキストで「Excel の編集方法」とは何ですか?

Java から Excel を編集することは、.xlsx または .xls ファイルをプログラムでロードし、セルの値を変更し、行/列を追加または削除し、手動操作なしで結果を保存することを意味します。GroupDocs.Editor は Office Open XML の複雑さを抽象化し、任意の OS で動作するクリーンで高レベルな API を提供します。

なぜ GroupDocs.Editor を使用して Java で Excel スプレッドシートを編集するのか?

GroupDocs.Editor は フル機能の API を提供し、50 以上の入力および出力フォーマット をサポートし、数百ページに及ぶワークブック をメモリに全体をロードせずに処理でき、Java 8+ をサポートする任意の OS 上で動作します。そのため、xlsx ファイルのデータを直接読み取り、編集できます。これにより Microsoft Office が不要になり、ライセンスコストが削減され、クラウドまたはオンプレミス環境での自動バッチ処理が可能になります。

前提条件

  • Java 8 以上がインストールされていること。
  • プロジェクトに GroupDocs.Editor for Java ライブラリが追加されていること(Maven/Gradle)。
  • 本番環境で使用する有効な GroupDocs.Editor ライセンスがあること。

ステップバイステップガイド

ステップ 1: エディタの初期化

Editor は GroupDocs.Editor for Java のメインエントリーポイントで、スプレッドシートドキュメントのロードと保存を行います。作業したい Excel ファイルを指すように Editor インスタンスを作成します。ワークブックがパスワードで保護されている場合は、ロードオプションにパスワードを含めます。

ステップ 2: ワークブックのロード

load メソッドを呼び出して SpreadsheetDocument オブジェクトを取得します。SpreadsheetDocument クラスはメモリ内の Excel ワークブック全体を表し、ワークシート、セル、数式にアクセスできます。

ステップ 3: セル、数式、またはワークシートの変更

必要なワークシートに移動し、API を使用してセルの値 (setValue) や数式 (setFormula) を変更します。新しいワークシートを追加したり、既存のものを削除したり、タブの順序を変更したりすることもできます。計算を含むセルには setFormula を使用してください。そうしないと数式が静的テキストとして保存されます。
setValue はセルの値を設定します。setFormula はセルに数式を割り当てます。

ステップ 4: 更新されたワークブックの保存

すべての変更が完了したら、save メソッドを呼び出してワークブックをディスクに書き込むか、クライアントにストリームします。元の計算エンジンはそのままで、Excel でファイルを開くと数式が再計算されます。

Pro tip: 開発中は元のファイルのコピーで作業し、誤ってデータが失われるのを防ぎましょう。

Java でパスワード保護された Excel ファイルを編集する方法

パスワードを含む LoadOptions オブジェクトでワークブックをロードし、保護されていないファイルと同様に編集します。エディタはメモリ内でファイルを復号し、変更を適用し、保存時に再暗号化して保護を維持します。
LoadOptions は暗号化されたワークブックのパスワードなど、ロードオプションを指定します。

大規模な Excel ワークブックを効率的に処理する方法

大規模なワークブックは大量のメモリを消費する可能性があります。リソース使用量を低く抑えるために:

  • ワークブック全体をメモリにロードせず、1 つのワークシートずつ処理する。
  • ストリーミング API(新しい GroupDocs.Editor のリリースで利用可能)を使用して、行をインクリメンタルに読み書きする。
  • 編集が完了したらワークシートへの参照を解放し、ガベージコレクタがメモリを回収できるようにする。

一般的な問題と解決策

  • 数式が静的テキストになる: 数式を含むべきセルには setValue ではなく setFormula を使用してください。
  • パスワード保護されたファイルが開けない: ロードオプションに正しいパスワードが指定されているか再確認してください。
  • 大きなファイルでメモリが逼迫する: ワークシート単位で処理を分割するか、ストリーミングを有効にしてヒープ使用量を削減してください。

利用可能なチュートリアル

Java 用 GroupDocs.Editor でマスターする Excel タブ編集:開発者向け包括的ガイド

追加リソース

よくある質問

Q: .xlsx と .xls の両方の形式を編集できますか?
A: はい、GroupDocs.Editor は最新およびレガシーの Excel ファイル形式の両方をサポートしています。

Q: 編集時にセルのスタイルや書式設定は保持されますか?
A: 明示的に変更しない限り、元のセルスタイル、フォント、色はすべて保持されます。

Q: 非常に大きなスプレッドシートを効率的に処理するにはどうすればよいですか?
A: ワークブックをチャンクに分けて処理し、個々のワークシートで作業し、各操作後にリソースを速やかに解放します。

Q: プログラムで新しいワークシートを追加できますか?
A: もちろんです。addWorksheet メソッドを使用してワークブック内に新しいタブを作成できます。

Q: 本番環境で利用できるライセンスオプションは何ですか?
A: GroupDocs.Editor は、永続ライセンス、サブスクリプション、そして一時ライセンスを提供し、さまざまなプロジェクトのニーズに対応します。


最終更新日: 2026-09-11
テスト環境: GroupDocs.Editor for Java 23.9
作者: GroupDocs

関連チュートリアル