- ベストアンサー
値が入っている一番右のセル位置を返す方法
たとえばA行に値(文字列)が横に並んでいるとして 値が入っている一番右のセルの位置を返すようにするにはどのようにすればいいでしょう?
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
セルの位置を返したいのであれば =CHAR(MATCH(MAX(1:1)+1,1:1,1)+64)&1 でどうでしょうか。
その他の回答 (6)
- tom04
- ベストアンサー率49% (2537/5117)
No.6です! たびたびごめんなさい。 投稿した後に気づきました。 最右側のデータを表示するのではなくて、列番号がご希望ですよね? 前回の方法は無視してください。 今回も配列数式になってしまいますので、 Shift+Ctrl+Enterキーで確定します。 表示させたいセルに =IF(COUNTA(1:1)=0,"",LARGE(IF(1:1<>"",COLUMN(1:1)),1)) としてShift+Ctrl+Enterキーです。 これで何列目かが数値で表示されると思います。 どうも何度も失礼しました。m(__)m
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! 一例です。 配列数式になってしまいますので、 この画面からコピー&ペーストしただけではエラーになると思います。 貼り付け後、F2キーを押す、又は貼り付けセルでダブルクリック、又は数式バー内で一度クリックします。 編集可能になりますので Shift+Ctrl+Enterキーで確定してください。 数式の前後に{ }マークが入り配列数式になります。 A行はないので、1行目としています。 表示させたいセルに =IF(COUNTA(1:1)=0,"",INDEX(1:1,LARGE(IF(1:1<>"",COLUMN(1:1)),1))) として、Shift+Ctrl+Enterキーです。 数値でも文字列でも対応できると思います。 以上、参考になれば良いのですが、 他に良い方法があれば読み流してくださいね。m(__)m
- mu2011
- ベストアンサー率38% (1910/4994)
NO1です。 セルの内容を返すと勘違いしていましたので訂正します。 =IF(COUNTA(B1:IV1),MATCH("",B1:IV1,-1),"")
- KURUMITO
- ベストアンサー率42% (1835/4283)
右の位置は列番号を知るにはということでしたら例えば1行目でX列までを調べるのでしたら次のような式になりますね。 =COUNTIF(A1:X1,"?*") その値を表示させるのでしたら例えば次のような式になりますね。 =INDEX(A:F,ROW(A1),COUNTIF(A1:X1,"?*"))
- merlionXX
- ベストアンサー率48% (1930/4007)
> たとえばA行に値(文字列)が エクセルの話ですよね? ならばA列はありますがA行なんて行はないんですけど・・・・。 でも横に並んでるなら列ではなく行ですねえ。 1行目でいいのかな・・・。 文字列なんですよね、ならば =MATCH("",1:1,-1) で、何列目かがわかります。 数値なら =MATCH(MAX(1:1)+1,1:1,1) です。
- mu2011
- ベストアンサー率38% (1910/4994)
文字列に限定です。(数値は対象外) A1に=IF(COUNTA(B1:IV1),INDEX(B1:IV1,MATCH("",B1:IV1,-1)),"")