[[20060518122244]] 『シートの列のアルファベットについて』(HIRO) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『シートの列のアルファベットについて』(HIRO)
シートの列のアルファベットを文字列(半角英数「A列」→"A")として取得することは可能でしょうか?
よろしくお願いいたします。

 =SUBSTITUTE(SUBSTITUTE(CELL("ADDRESS"),ROW(),),"$",)
 としますと、この数式を入力している列が英字で戻りますが、
 ご質問は、このようなことでしょうか?                     (LOOKUP)

ありがとうございます。ご教授いただいたとおりの関数でバッチリです。

 =CHAR(COLUMN()+64)
 でもいいでしょうか。(sato)

=CHAR(COLUMN()+64)
 でもいいでしょうか。(sato)

 AA AB AC の場合は無理です

 =SUBSTITUTE(ADDRESS(1,COLUMN(),4),1,)というのもあると思います。        (LOOKUP)

 >AA AB AC の場合は無理です

 なるほど、ご教示ありがとうございます。
 ところでLOOKUPさんの

 =SUBSTITUTE(SUBSTITUTE(CELL("ADDRESS"),ROW(),),"$",)

 のほうは、入力したときは表示されますがセルの位置を変えて再計算すると
 表示も変わってしまいますね?
 (sato)


 2度も衝突! でもそのままUPします。 
 解決ですが、私も考えたのでUPさせていただきます。
 =MID(CELL("address",A1),2,(COLUMN(A1)>26)+1)   A1(A列)の列が返ります。
 LOOKUPさんの最初の式は、別のセルをアクティブにして再計算をすると
 答が変わってしまいます。
 satoさんの式は、AA列以降に対応出来ません。
(純丸)(o^-')b ※チェックご容赦m(__)m

 ご指摘ありがとうございます。
 不適切なものを掲載しまして、申し訳ありませんでした。

 =CELL()を使用するものは、このようにしますと、自分のセルを特定できると思います。
 =SUBSTITUTE(SUBSTITUTE(CELL("ADDRESS",INDEX($1:$1,COLUMN())),1,),"$",) (LOOKUP)

 回答のほうは出揃ったみたいですが、

 =IF(COLUMN()<27,"",CHAR(INT((COLUMN()-1)/26)+64))
  &CHAR(MOD(COLUMN(),26)+IF(MOD(COLUMN(),26),64,90))

 強引に、悪あがきして作った式です。
 あまり参考にならないかも知れませんが、まあ一例ということで・・。
 (sato)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.