java poi列号转字母_通过Excel列号取得其对应的列字母

在编程中,我们常常利用POI或者其他接口操作Excel文件。当通过列号写公式时,很麻烦。因为Excel公式中,使用列字母形式表示单元格。比如:SUM(B1:B

在编程中,我们常常利用POI或者其他接口操作Excel文件。当通过列号写公式时,很麻烦。因为Excel公式中,使用列字母形式表示单元格。比如:SUM(B1:B5),下面的方法可以通过Excel列号取得其对应的列字母。这样通过循环列号,得到对应的列字母就可以方便的进行操作不同列了。下面是实现代码。

Java实现

/**

* 获取一列对应的字母。例如:ColumnNum=1,则返回值为A 列号转字母

*/

private String getColumnName(int columnNum) {

int first;

int last;

String result = "";

if (columnNum > 256)

columnNum = 256;

first = columnNum / 27;

last = columnNum - (first * 26);

if (first > 0)

result = String.valueOf((char) (first + 64));

if (last > 0)

result = result + String.valueOf((char) (last + 64));

return result;

}

VBA实现

'获取一列对应的字母

'例如:ColumnNum=1,则返回值为A

'列号转字母

Function getColumnName(ByVal