こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセル 列のアルファベットを出す方法はありますか?

行番号を求めるにはrow(セル)で、これに対し列を求める
にはcolumn(セル)だと思うのですが、これの出力は数字で、
当該セルが、左から何個目のセルにあるかを出しています。

列番号のアルファベットを出すような関数はありますか?
もし出せればindirect関数が使えて便利だなーと思うのですが・・・。
columnを使って便利なようにできますか?

投稿日時 - 2008-11-12 23:18:07

QNo.4474136

暇なときに回答ください

質問者が選んだベストアンサー

セル A1 に数値の 1~256 の列番号を入力したとき、該当する列記号を返す式:
=LEFT(ADDRESS(1,A1,2),1+(A1>26))

投稿日時 - 2008-11-13 00:44:01

このQ&Aは役に立ちましたか?

11人が「このQ&Aが役に立った」と投票しています

回答(6)

ANo.6

>セル A1 に数値の 1~256 の列番号を入力したとき、該当する列記号を返す式
◆こんな方法もありますよ
=SUBSTITUTE(ADDRESS(1,A1,4),1,)

投稿日時 - 2008-11-13 08:49:13

ANo.4

ご質問の趣旨からは逸れるかもしれませんが、INDIRECT関数を使うためであれば、アルファベットにする必要はありません。

shiritaiさんは
=INDIRECT("B1")
というような使い方を想定されていると思いますが、
=INDIRECT("R1C2",FALSE)
という指定方法もあります。

これは行と列を番号で指定するものです。
上の例だと、1行め2列めのセルを表示してくれます。
(要するにB1と指定したのと同じ)

これならわざわざアルファベットに変換する必要はありません。

投稿日時 - 2008-11-12 23:50:07

ANo.3

#1です。
#2さんの回答から思いついた、半ば冗談です。
=MID(ADDRESS(ROW(),COLUMN()),2,FIND("$",ADDRESS(ROW(),COLUMN()),2)-2)

投稿日時 - 2008-11-12 23:48:13

ANo.2

INDIRECT関数を使うためにアルファベットを出す必要性がわからないのですが…
INDIRECT(ADDRESS(行,列))
と数字で入れることもできますよ

投稿日時 - 2008-11-12 23:31:11

お礼

この「ADDRESS」という関数を知らなかったからです。
これなら、わざわざアルファベットを出さなくても
いいような気がします。

投稿日時 - 2008-11-12 23:34:47

ANo.1

直接の回答では無いですが、indirect関数の第二引数にFalseを指定すると、R1C1形式が使える事を、つい先日知りました。これなら、columnがそのまま使えると思いますので、ご参考まで。
http://ohpa.net/modules/xlnote/content0020.html

投稿日時 - 2008-11-12 23:28:18

お礼

ありがとうございます。

投稿日時 - 2008-11-12 23:40:34

あなたにオススメの質問