How to convert a column number (e.g. 127) into an Excel column (e.g. AA)

前端 未结 30 2847
鱼传尺愫
鱼传尺愫 2020-11-22 00:35

How do you convert a numerical number to an Excel column name in C# without using automation getting the value directly from Excel.

Excel 2007 has a possible range o

30条回答
  •  忘掉有多难
    2020-11-22 01:00

    I'm trying to do the same thing in Java... I've wrote following code:

    private String getExcelColumnName(int columnNumber) {
    
        int dividend = columnNumber;
        String columnName = "";
        int modulo;
    
        while (dividend > 0)
        {
            modulo = (dividend - 1) % 26;
    
            char val = Character.valueOf((char)(65 + modulo));
    
            columnName += val;
    
            dividend = (int)((dividend - modulo) / 26);
        } 
    
        return columnName;
    }
    

    Now once I ran it with columnNumber = 29, it gives me the result = "CA" (instead of "AC") any comments what I'm missing? I know I can reverse it by StringBuilder.... But looking at the Graham's answer, I'm little confused....

提交回复
热议问题