いきなり答える備忘録

G Suite・Microsoft 365・LibreOfficeなどに関するメモと日々の実験

(Gスプレッドシート)列の記号(アルファベット)を取得する

 Googleスプレッドシートで、あるセルが属する列の記号(アルファベット)を取得する方法についてです。
 列の番号(数字)ならCOLUMN関数で簡単に解決しますが、記号の取得には少し工夫が必要です。

  • ADDRESSなどの関数を組み合わせて列の記号を取得することができます。

手順

f:id:accs2014:20200425150450p:plain:right:w550

 まずは指定したセル(ここではB3)の列記号を取得してみます。
 C3セルに次のように記入します。

=SPLIT(ADDRESS(1,COLUMN(B3),4),1)

 ADDRESS関数の第1引数を1(1行目)、第2引数をCOLUMN(B3)(2列目)と指定し、さらに第3引数を4(相対参照、つまり$なし)とすることで、「B1」というアドレスを取得しています(COLUMN関数の引数で何行目のセルを指定しても「B1」というアドレスが取得されます)。
 あとは「1」を消すだけなのですが、SPLIT関数を使い「1」を区切り文字とみなすことで実現しています。SUBSTITUTE関数などを使うより少し短くなります。
 

f:id:accs2014:20200425150454p:plain:right:w550

 確定すると、列記号「B」が取得できました。

f:id:accs2014:20200425150500p:plain:right:w550

 式が入力されている、そのセル自体の列記号を取得する場合は、COLUMN関数の引数に何も指定しなければOKです。
 画像は、C3セルに次のように記した結果です。列記号「C」が取得できています。

=SPLIT(ADDRESS(1,COLUMN(),4),1)