Spaltenindex anhand des Spaltenbuchstabens in Excel ermitteln

by Flo 9. May 2008 12:38

Heute musste ich bei einem kleinen Projekt den Spaltenindex anhand des oder der Buchstaben ermitteln. Wahrscheinlich gibt es dafür bereits etwas fertiges. Nichts desto trotz habe ich mir selbst etwas einfallen lassen. ;-)

public int GetColumnIndexByLetter(char[] cs)
{
    int index = 0;
    int tempIndex = 0;

    for (int i = cs.Length, j = 0; i > 0; i--, j++)
    {
        switch (cs[j])
        {
            case 'A':
                tempIndex = 1;
                break;
            case 'B':
                tempIndex = 2;
                break;
            case 'C':
                tempIndex = 3;
                break;
            case 'D':
                tempIndex = 4;
                break;
            case 'E':
                tempIndex = 5;
                break;
            case 'F':
                tempIndex = 6;
                break;
            case 'G':
                tempIndex = 7;
                break;
            case 'H':
                tempIndex = 8;
                break;
            case 'I':
                tempIndex = 9;
                break;
            case 'J':
                tempIndex = 10;
                break;
            case 'K':
                tempIndex = 11;
                break;
            case 'L':
                tempIndex = 12;
                break;
            case 'M':
                tempIndex = 13;
                break;
            case 'N':
                tempIndex = 14;
                break;
            case 'O':
                tempIndex = 15;
                break;
            case 'P':
                tempIndex = 16;
                break;
            case 'Q':
                tempIndex = 17;
                break;
            case 'R':
                tempIndex = 18;
                break;
            case 'S':
                tempIndex = 19;
                break;
            case 'T':
                tempIndex = 20;
                break;
            case 'U':
                tempIndex = 21;
                break;
            case 'V':
                tempIndex = 22;
                break;
            case 'W':
                tempIndex = 23;
                break;
            case 'X':
                tempIndex = 24;
                break;
            case 'Y':
                tempIndex = 25;
                break;
            case 'Z':
                tempIndex = 26;
                break;
        }

        if (i == 1)
            index += tempIndex;
        else
            index += tempIndex * ((i-1) * 26);
    }

    return index;
}

Tags: ,

.NET

Powered by BlogEngine.NET 1.5.0.7
Theme by Mads Kristensen

Über mich

Ich bin freiberuflicher Softwareentwickler (.NET, Cocoa, Webentwicklung) und versuche mich als hobbymäßig an der Fotografie.

Seit 1. Oktober 2007 studiere ich in an der Georg-Simon-Ohm-Hochschule in Nürnberg Wirtschaftsinformatik.

Calendar

<<  February 2012  >>
MoTuWeThFrSaSu
303112345
6789101112
13141516171819
20212223242526
2728291234
567891011

View posts in large calendar