C# 如何使用C中的Excel列名格式获取Excel中的列索引#
我在这里找到了 大功用C# 如何使用C中的Excel列名格式获取Excel中的列索引#,c#,excel,C#,Excel,我在这里找到了 大功用 private string getColumnName(int columnIndex) { int dividend = columnIndex; string columnName = String.Empty; int modifier; while (dividend > 0) { modifier = (dividend - 1) % 26; columnName =
private string getColumnName(int columnIndex)
{
int dividend = columnIndex;
string columnName = String.Empty;
int modifier;
while (dividend > 0)
{
modifier = (dividend - 1) % 26;
columnName =
Convert.ToChar(65 + modifier).ToString() + columnName;
dividend = (int)((dividend - modifier) / 26);
}
return columnName;
}
我想做类似的事情-提供列名和接收索引。例如,提供名称“AB”并作为结果索引28接收。如何做到这一点
更新:
令人惊讶的是,我在评论部分找到了解决方案
这里
这里呢
可能重复-@JMK OP询问反向方法我链接到一个关于反向方法的问题,是的AB应该是28,
AB
列没有索引28吗?
public static string GetColumnName(int index)
{
const string letters = "ZABCDEFGHIJKLMNOPQRSTUVWXY";
int NextPos = (index / 26);
int LastPos = (index % 26);
if (LastPos == 0) NextPos--;
if (index > 26)
return GetColumnName(NextPos) + letters[LastPos];
else
return letters[LastPos] + "";
}