列インデックスを対応する列文字に変換する 質問する

列インデックスを対応する列文字に変換する 質問する

たとえば、次のようなスプレッドシートがある場合、Google スプレッドシートの列インデックスを対応する文字値に変換する必要があります。

ここに画像の説明を入力してください

これを実行する必要があります (この機能は明らかに存在しませんが、例です)。

getColumnLetterByIndex(4);  // this should return "D"
getColumnLetterByIndex(1);  // this should return "A"
getColumnLetterByIndex(6);  // this should return "F"

0さて、インデックスが から始まるのか から始まるのかは正確には思い出せませんが1、いずれにせよ概念は明確であるはずです。

ガスに関する資料にはこれについて何も見つかりませんでした。私が盲目なのでしょうか? 何か分かりますか?

ありがとう

ベストアンサー1

しばらく前に、さまざまな目的でこれらを作成しました (列番号が 26 を超える場合は、2 文字の列名を返します)。

function columnToLetter(column)
{
  var temp, letter = '';
  while (column > 0)
  {
    temp = (column - 1) % 26;
    letter = String.fromCharCode(temp + 65) + letter;
    column = (column - temp - 1) / 26;
  }
  return letter;
}

function letterToColumn(letter)
{
  var column = 0, length = letter.length;
  for (var i = 0; i < length; i++)
  {
    column += (letter.charCodeAt(i) - 64) * Math.pow(26, length - i - 1);
  }
  return column;
}

おすすめ記事