プロが教えるわが家の防犯対策術!

いつもお世話になっております。
EXCELの勉強不足もあり、やりたいことができません。

画像のように、数値や値が入っている「月」を表示したいと思っています。
関数だけを使って解決したいのですが、どのようにしたらよいでしょうか。

「EXCEL数値が存在する列の項目名を表示」の質問画像

A 回答 (4件)

No.2 です。

すみません、初歩的なミスしました。次式のとおり「$」を追記します。

H2

=if(b2="",,B$1)&if(counta(b2:b2)*(c2<>""),"、",)&if(c2="",,C$1)&if(counta(b2:c2)*(d2<>""),"、",)&if(d2="",,D$1)&if(counta(b2:d2)*(e2<>""),"、",)&if(e2="",,E$1)&if(counta(b2:e2)*(f2<>""),"、",)&if(f2="",,F$1)&if(counta(b2:f2)*(g2<>""),"、",)&if(g2="",,G$1)
    • good
    • 1
この回答へのお礼

IF関数とCOUNTA関数で構成されていて
私の知っている関数であったでベストアンサーとさせていただきます。

ありがとうございました。

お礼日時:2014/04/26 22:24

エクセルにはスマートにセルとセルをくっつける計算をする関数が無いので、画像のように1つのセルに表示したいなら、だいぶモッテマワッタやりかたを取る必要があります。




例:確実にできるという意味では簡単だけど
H2:
=SUBSTITUTE(TRIM(CONCATENATE(IF(B2<>"",B$1,"")," ",IF(C2<>"",C$1,"")," ",IF(D2<>"",D$1,"")," ",IF(E2="","",E$1)," ",IF(F2="","",F$1)," ",IF(G2="","",G$1)))," ",",")
以下コピー


例:簡単お勧め
シート2のB2に
=A2&" "&IF(Sheet1!B2="","",Sheet1!B$1)
G列までコピー、下にコピー

シート1のH2に
=SUBSTITUTE(TRIM(Sheet2!H2)," ",",")
以下コピー
「EXCEL数値が存在する列の項目名を表示」の回答画像3
    • good
    • 1
この回答へのお礼

新しい関数が使えるようになりました!
ありがとうございます!

お礼日時:2014/04/26 22:23

H2



=if(b2="",,b1)&if(counta(b2:b2)*(c2<>""),"、",)&if(c2="",,c1)&if(counta(b2:c2)*(d2<>""),"、",)&if(d2="",,d1)&if(counta(b2:d2)*(e2<>""),"、",)&if(e2="",,e1)&if(counta(b2:e2)*(f2<>""),"、",)&if(f2="",,f1)&if(counta(b2:f2)*(g2<>""),"、",)&if(g2="",,g1)
    • good
    • 0

こんばんは!



>関数だけを使って解決したいのですが
というコトですと1セルに表示するのは難しいと思いますので、
↓の画像のように別セルに個別に表示する方法となります。

画像ではO2セルに
=IFERROR(INDEX($B$1:$M$1,SMALL(IF($B2:$M2<>"",COLUMN($A$1:$L$1)),COLUMN(A1))),"")
これは配列数式になりますので、Ctrl+Shift+Enterで確定!
この画面からコピー&ペーストする場合は
上記数式をドラッグ&コピー → O2セルを選択 → 数式バー内に貼り付け → そのまま(編集可能なまま)
Ctrl+Shiftキーを押しながらEnterキーで確定!
数式の前後に{ }マークが入り配列数式になります。
最後にフィルハンドルで列・行方向にコピー!
これで画像のような感じになります。

※ VBAであればお示しの画像のように1セル表示も可能です。m(_ _)me
「EXCEL数値が存在する列の項目名を表示」の回答画像1
    • good
    • 0
この回答へのお礼

セルを複数分ける方法もわかりました!
ありがとうございます!

お礼日時:2014/04/26 22:24

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A