📘

Excelで列を計算で取得

2024/07/14に公開

行と列を入れ替えて表示するときとかなど。Excelと書きましたが、スプレッドシートでもできます。

元ネタは以下になります。
https://qiita.com/nomico/items/60bce25569a5276b5817

流れ

  1. 列文字を列番号に変換(CELL関数) (例: Cを3に変換)
  2. 1.で求めた列番号足すなり引くなり
  3. 2.で求めた列番号を列文字に変換(SUBSTITUTE関数) (例: Eを5に変換)

黄色背景のセルがE列の数式が入っているセル。

列文字を列番号に変換(CELL関数) (例: Zを26に変換)

=CELL("col", INDIRECT(A2&"1"))

図の2行目

列番号を求めたい列文字をA2に入れてCELL関数を入力。&"1"はセル参照にするためにくっつけてるだけなので、&"1500"でも何でもいい

列番号を列文字に変換(SUBSTITUTE関数) (例: 31をAEに変換)

=SUBSTITUTE(ADDRESS(1,C4,4),1,"")

CELL関数で求めた列番号から逆に列文字を算出。今回は5列先をイメージしてる。

INDIRECTで参照する場合は、行番号も別のセルに記載して、求めた列文字と&でくっつけてあげる

INDIRECT(A4&"100")

とかで、AE100セルの値が参照可能になる。

Discussion