Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用C中的Excel列名格式获取Excel中的列索引#_C#_Excel - Fatal编程技术网

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] + "";
}