Excelowa nazwa kolumny z liczby

Poniżej dwie funkcje uzyskujące Excelową nazwę kolumny z liczby (indeksu). Pierwsza bazuje na indeksie liczonym od zera tzn. 0 == A, 1 == B itd.

function getNameFromNumber($num) {
    $numeric = $num % 26;
    $letter = chr(65 + $numeric);
    $num2 = intval($num / 26);
    if ($num2 > 0) {
        return getNameFromNumber($num2 - 1) . $letter;
    } else {
        return $letter;
    }
}
Bazuje na indeksie liczonym od jedynki (1 == A, itd.).
function getNameFromNumber($num) {
    $numeric = ($num - 1) % 26;
    $letter = chr(65 + $numeric);
    $num2 = intval(($num - 1) / 26);
    if ($num2 > 0) {
        return getNameFromNumber($num2) . $letter;
    } else {
        return $letter;
    }
}

Komentarze 0

Dodaj komentarz