您的位置:首页 > 其它

EXCEL中列号由数字转为字母类

2008-05-09 16:21 681 查看
class NumberToLetter

{

#region Generate a letter

/// <summary>

/// Generate a letter according to the param

/// Return the letter

/// </summary>

/// <param name="number">the letter's number</param>

/// <returns>The number represent which letters</returns>

public string GenerateLetter(int number)

{

string letter = string.Empty;

switch (number)

{

case 0: letter = "Z"; break;

case 1: letter = "A"; break;

case 2: letter = "B"; break;

case 3: letter = "C"; break;

case 4: letter = "D"; break;

case 5: letter = "E"; break;

case 6: letter = "F"; break;

case 7: letter = "G"; break;

case 8: letter = "H"; break;

case 9: letter = "I"; break;

case 10: letter = "J"; break;

case 11: letter = "K"; break;

case 12: letter = "L"; break;

case 13: letter = "M"; break;

case 14: letter = "N"; break;

case 15: letter = "O"; break;

case 16: letter = "P"; break;

case 17: letter = "Q"; break;

case 18: letter = "R"; break;

case 19: letter = "S"; break;

case 20: letter = "T"; break;

case 21: letter = "U"; break;

case 22: letter = "V"; break;

case 23: letter = "W"; break;

case 24: letter = "X"; break;

case 25: letter = "Y"; break;

default: return "Sorry,there is no answer!";

}

return letter;

}

#endregion

#region Get the column'name

/// <summary>

/// Get the column'name by the column'number

/// Return the column'name

/// </summary>

/// <param name="number">the column's number</param>

/// <returns>The column'name </returns>

string columnName = string.Empty;

public string ChangeNumber(int columnNum)

{

int i = columnNum / 26;

int j = columnNum % 26;

string k = string.Empty;

if (i == 0)

{

columnName = GenerateLetter(j);

}

else

{

k = GenerateLetter(j);

columnName = ChangeNumber(i) + k;

}

return columnName;

}

#endregion

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: