AndroidでExcelファイルを作成する

この記事では、Androidアプリケーション内からExcel自動化機能を実装する方法を学習します。この記事を読むと、AndroidアプリでプログラムでExcelXLSXまたはXLSファイルを最初から作成できるようになります。さらに、この記事では、既存のExcelファイルを更新する方法、グラフを生成する方法、数式を適用する方法、Excelワークシートにピボットテーブルを追加する方法について説明します。

Excelファイルを作成するためのAndroidAPI-無料ダウンロード

Java経由のAndroid用Aspose.Cellsは、MSOfficeなしでExcelファイルを作成または変更できる強力なスプレッドシート操作APIです。 APIは、チャート、グラフ、数式の追加をサポートし、プログラムで他のスプレッドシート操作操作を実行します。 APIをダウンロードするか、build.gradleの次の構成を使用してインストールできます。

maven {
    url "https://repository.aspose.com/repo/" }
compile (
        group: 'com.aspose',
        name: 'aspose-cells',
        version: '21.3',
        classifier: 'android.via.java')

AndroidでExcelXLSXまたはXLSを作成する

各Excelブックは、データをセルの形式で保持するための行と列をさらに含む1つ以上のワークシートで構成されています。以下は、ExcelXLSXファイルを最初から作成する手順です。

  • Workbookクラスのインスタンスを作成します。
  • Workbook.getWorksheets.get()メソッドを使用して、目的のワークシートにアクセスします。
  • A1、B3などのセルの識別子を使用して、ワークシートの目的のセルに値を入力します。
  • Workbook.save()メソッドを使用して、ブックをExcelファイルとして保存します。

次のコードサンプルは、AndroidでExcelXLSXファイルを作成する方法を示しています。

// 新しいブックを作成する
Workbook workbook = new Workbook();

// セルに値を追加する
workbook.getWorksheets().get(0).getCells().get("A1").putValue("Hello World!");

// ExcelXLSXファイルとして保存
workbook.save("Excel.xlsx"); 
AndroidでExcelXLSXXLSを作成する

AndroidでExcelXLSXファイルを編集する

次に、既存のMSExcelファイルにデータを変更または挿入する方法を見てみましょう。このためには、ファイルをロードし、目的のワークシートにアクセスして、更新されたファイルを保存するだけです。以下は、既存のExcelファイルを変更する手順です。

  • Workbookクラスを使用してExcelファイルを開きます。
  • WorksheetクラスとCellクラスをそれぞれ使用して、ワークシートとセルにアクセスします。
  • 更新されたブックをExcelの.xlsxファイルとして保存します。

次のコードサンプルは、Androidで既存のMSExcelファイルを編集する方法を示しています。

// 新しいブックを作成する
Workbook workbook = new Workbook("workbook.xls"); 

// ワークシートのセルから「A1」セルの参照を取得します
Cell cell = workbook.getWorksheets().get(0).getCells().get("A1");

// 「HelloWorld!」を設定します「A1」セルへの値
cell.setValue("updated cell value.");

// Excelファイルを書く
workbook.save("Excel.xls", FileFormatType.EXCEL_97_TO_2003);

AndroidのExcelでチャートやグラフを作成する

スプレッドシートのグラフは、ワークシートに保存されているデータを視覚的に表すために使用されます。大量のデータを非常に簡単に分析できます。 Aspose.Cells for Android via Javaは、Excelファイル内にプログラムで作成できる幅広いグラフを提供します。以下は、ExcelXLSXファイルでグラフを作成する手順です。

  • Workbookクラスを使用して、新しいExcelファイルを作成するか、既存のファイルをロードします。
  • ワークシートにデータを追加します(オプション)。
  • Worksheet.getCharts()メソッドを使用して、ワークシートのチャートコレクションを取得します。
  • Worksheet.getCharts().add()メソッドを使用して新しいグラフを追加します。
  • コレクションから新しく作成されたグラフを取得します。
  • セルの範囲を指定して、グラフのNSeriesを設定します。
  • ブックをExcelの.xlsxファイルとして保存します。

次のコードサンプルは、AndroidのExcelXLSXでグラフを作成する方法を示しています。

// 新しいブックを作成する
Workbook workbook = new Workbook("workbook.xlsx"); 

// 最初のワークシートの参照を取得する
WorksheetCollection worksheets = workbook.getWorksheets();
Worksheet sheet = worksheets.get(0);

// セルにサンプル値を追加する
Cells cells = sheet.getCells();
Cell cell = cells.get("A1");
cell.setValue(50);
cell = cells.get("A2");
cell.setValue(100);
cell = cells.get("A3");
cell.setValue(150);
cell = cells.get("B1");
cell.setValue(4);
cell = cells.get("B2");
cell.setValue(20);
cell = cells.get("B3");
cell.setValue(50);

// ワークシートでグラフを取得する
ChartCollection charts = sheet.getCharts();

// ワークシートにグラフを追加する
int chartIndex = charts.add(ChartType.PYRAMID, 5, 0, 15, 5);
Chart chart = charts.get(chartIndex);

// 「A1」の範囲のチャートにNSeries(チャートデータソース)を追加する
// 「B3」へのセル
SeriesCollection serieses = chart.getNSeries();
serieses.add("A1:B3", true);

// Excelファイルを書く 
workbook.save("Excel_with_Chart.xlsx");
ExcelAndroidでチャートを作成する

AndroidのExcelXLSXでピボットテーブルを作成する

Excelワークシートのピボットテーブルには、データへのフィルターの追加、合計の計算、データの要約など、さまざまな目的があります。ピボットテーブルは、ワークシートのセルの範囲を使用して作成できます。以下は、Excelワークシートでピボットテーブルを作成する手順です。

  • 新しいWorkbookを作成するか、既存のファイルをロードします。
  • ワークシートにデータを挿入します(オプション)。
  • Worksheet.getPivotTables()メソッドを使用してピボットテーブルコレクションにアクセスします。
  • Worksheet.getPivotTables().add()メソッドを使用して、ワークシートに新しいピボットテーブルを追加します。
  • ピボットテーブルにデータを提供します。
  • ブックを保存します。

次のコードサンプルは、Excelでピボットテーブルを作成する方法を示しています。

// 新しいブックを作成する
Workbook workbook = new Workbook("workbook.xlsx"); 

// 最初のワークシートを入手します。
Worksheet sheet = workbook.getWorksheets().get(0);

// ワークシートのセルコレクションの取得
Cells cells = sheet.getCells();

// セルに値を設定する
Cell cell = cells.get("A1");
cell.setValue("Sport");
cell = cells.get("B1");
cell.setValue("Quarter");
cell = cells.get("C1");
cell.setValue("Sales");

cell = cells.get("A2");
cell.setValue("Golf");
cell = cells.get("A3");
cell.setValue("Golf");
cell = cells.get("A4");
cell.setValue("Tennis");
cell = cells.get("A5");
cell.setValue("Tennis");
cell = cells.get("A6");
cell.setValue("Tennis");
cell = cells.get("A7");
cell.setValue("Tennis");
cell = cells.get("A8");
cell.setValue("Golf");

cell = cells.get("B2");
cell.setValue("Qtr3");
cell = cells.get("B3");
cell.setValue("Qtr4");
cell = cells.get("B4");
cell.setValue("Qtr3");
cell = cells.get("B5");
cell.setValue("Qtr4");
cell = cells.get("B6");
cell.setValue("Qtr3");
cell = cells.get("B7");
cell.setValue("Qtr4");
cell = cells.get("B8");
cell.setValue("Qtr3");

cell = cells.get("C2");
cell.setValue(1500);
cell = cells.get("C3");
cell.setValue(2000);
cell = cells.get("C4");
cell.setValue(600);
cell = cells.get("C5");
cell.setValue(1500);
cell = cells.get("C6");
cell.setValue(4070);
cell = cells.get("C7");
cell.setValue(5000);
cell = cells.get("C8");
cell.setValue(6430);


PivotTableCollection pivotTables = sheet.getPivotTables();

// ワークシートへのピボットテーブルの追加
int index = pivotTables.add("=A1:C8", "E3", "PivotTable2");

// 新しく追加されたピボットテーブルのインスタンスへのアクセス
PivotTable pivotTable = pivotTables.get(index);

// 行の総計を表示しません。
pivotTable.setRowGrand(false);

// 最初のフィールドを行領域にドラッグします。
pivotTable.addFieldToArea(PivotFieldType.ROW, 0);

// 2番目のフィールドを列領域にドラッグします。
pivotTable.addFieldToArea(PivotFieldType.COLUMN, 1);

// 3番目のフィールドをデータ領域にドラッグします。
pivotTable.addFieldToArea(PivotFieldType.DATA, 2);

// Excelファイルを書く 
workbook.save("Excel_with_Chart.xlsx");
優れたピボットテーブルを作成する

Excelファイルにセルの数式を追加する

Aspose.Cells for Android via Javaを使用すると、Excelワークシートの数式を操作することもできます。組み込み関数とアドイン関数をセルに適用できます。

Excelで組み込み関数を適用する

組み込み関数を使用するには、ワークシート内の目的のセルにアクセスし、Cell.setFormula(String)メソッドを使用して数式を追加するだけです。次のコードサンプルは、組み込み式を設定する方法を示しています。

// 新しいブックを作成する
Workbook workbook = new Workbook();

// セルに値を追加する
workbook.getWorksheets().get(0).getCells().get(0).setFormula("=H7*(1+IF(P7 =$L$3,$M$3, (IF(P7=$L$4,$M$4,0))))");

// ExcelXLSXファイルとして保存
workbook.save("Excel.xlsx"); 

Excelにアドイン関数を追加する

ユーザー定義関数を使用する必要がある場合があります。このためには、.xlam(Excelマクロ対応アドイン)ファイルを使用してアドイン関数を登録し、それを目的のセルに使用する必要があります。アドイン関数を登録するために、Javaを介したAndroid用Aspose.Cellsは、registerAddInFunction(int, String)およびregisterAddInFunction(String, String, boolean)メソッドを提供します。次のコードサンプルは、アドイン関数を登録して使用する方法を示しています。

// 新しいブックを作成する
Workbook workbook = new Workbook();

// マクロ対応のアドインを関数名とともに登録する
int id = workbook.getWorksheets().registerAddInFunction("TESTUDF.xlam", "TEST_UDF", false);

// ファイルにさらに関数を登録します(存在する場合)
workbook.getWorksheets().registerAddInFunction(id, "TEST_UDF1"); //in this way you can add more functions that are in the same file

// 最初のワークシートにアクセスする
Worksheet worksheet = workbook.getWorksheets().get(0);

// 最初のセルにアクセスする
Cell cell = worksheet.getCells().get("A1");

// アドインに存在する数式名を設定します
cell.setFormula("=TEST_UDF()"); 

// ExcelXLSXファイルとして保存
workbook.save("Excel.xlsx"); 

結論

この記事では、MSOfficeを使用せずにAndroidでMSExcelファイルを最初から作成する方法を説明しました。また、ブックを更新する方法、グラフを作成する方法、表を追加する方法、およびMSExcelワークシート内のセル値に数式を適用する方法も学習しました。 Android Excel APIの詳細については、ドキュメントを使用して学ぶことができます。ご不明な点がございましたら、フォーラムからお気軽にお問い合わせください。

関連項目