セル名と行/列インデックスの変換

行と列のインデックスからセル名を取得する方法

行と列のインデックスを指定すると、セルの名前を見つけることが可能です。 この記事では、その方法について説明します。

Aspose.Cells は、開発者が行と列のインデックスを指定するとセルの名前を取得できる CellsHelper.cellIndexToName メソッドを提供しています。

以下のサンプルコードは、CellsHelper.cellIndexToName を使用して既知の行と列のインデックスでセル名にアクセスする方法を示しています。コードは以下の出力を生成します。

Cell Name at [0, 0]: A1

Cell Name at [4, 0]: A5

Cell Name at [0, 4]: E1

Cell Name at [2, 2]: C3
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
String cellname = CellsHelper.cellIndexToName(0, 0);
System.out.println("Cell Name at [0, 0]: " + cellname);
cellname = CellsHelper.cellIndexToName(4, 0);
System.out.println("Cell Name at [4, 0]: " + cellname);
cellname = CellsHelper.cellIndexToName(0, 4);
System.out.println("Cell Name at [0, 4]: " + cellname);
cellname = CellsHelper.cellIndexToName(2, 2);
System.out.println("Cell Name at [2, 2]: " + cellname);

セル名から行と列のインデックスを取得する方法

セルの名前から行と列のインデックスを見つけることが可能です。 この記事では、その方法について説明します。

Aspose.Cellsは、CellsHelper.cellNameToIndexメソッドを提供しており、このメソッドを使用してセルの名前から行インデックスと列インデックスを取得できます。

次のサンプルコードは、CellsHelper.cellNameToIndexを使用してセルの名前から行と列のインデックスを取得する方法を示しています。コードは次の出力を生成します。

Row Index of Cell C6: 5

Column Index of Cell C6: 2
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
int[] cellIndices = CellsHelper.cellNameToIndex("C6");
System.out.println("Row Index of Cell C6: " + cellIndices[0]);
System.out.println("Column Index of Cell C6: " + cellIndices[1]);

安全なシート名の作成方法

時には、ランタイムでシート名を割り当てる必要があります。このシナリオでは、'<>+(?‘のような追加文字が含まれる可能性のあるシート名があるかもしれません。シート名として許可されていない文字はユーザーが提供するあらかじめ設定された文字に置き換える必要があります。同様に、31文字を超える長さが増加する可能性があるため、切り捨てる必要があります。Apache POIは安全な名前を作成するための特定の機能を提供していますが、Aspose.Cellsではこれらの問題を処理するための類似した機能が提供されています。次のサンプルコードは、この機能を示しています。

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// Long name will be truncated to 31 characters
String name1 = CellsHelper.createSafeSheetName("this is first name which is created using CellsHelper.CreateSafeSheetName and truncated to 31 characters");
// Any invalid character will be replaced with _
String name2 = CellsHelper.createSafeSheetName(" <> + (adj.Private ? \" Private\" : \")", '_');//? shall be replaced with _
// Display first name
System.out.println(name1);
//Display second name
System.out.println(name2);

コンソール出力

これは最初の名前です。

` `<> + (adj.Private _ " Private"