すべてのカテゴリ » インターネット・パソコン » ソフトウェア » 使い方・不具合

質問

終了

EXCEL関数に関する質問ですが、

   あ|い|う|え|お|
○  1  1     1       A

●  1     1     1      B

■     1  1  1         C


の様に、「○」の人は、「あいえ」のコースを希望するので「Aグループ」
「●」の人は、「あうお」のコースを希望するので「Bグループ」といったように、
グループ分けする関数を作ってくれと言われたのですが、よい解決方法はありませんか?

また答えで無くても、この関数を使うよと言った「検索ワード」なる物でも構いません。
色んな関数を調べていますが、上記の様な例がある説明が無いため、検索するにも行き詰まっていして…。どうぞよろしくお願いします。

  • 質問者:まひろ
  • 質問日時:2011-03-14 14:47:56
  • 0

とりあえず基本的な関数だけでできる方法を。

A1セルから上記の表が始まっているとします。

B1=”あ”~F1=”お” になりますね。


グループを表示させたい列の前に作業セルを1列作ります。

ここでは「列G」を作業セルとします。

そしてG2セル(○の行になります)には次の数式を入力。

 =IF(B2<>"",B$1,"")&IF(C2<>"",C$1,"")&IF(D2<>"",D$1,"")&IF(E2<>"",E$1,"")&IF(F2<>"",F$1,"")

これでG2セルには”あいえ”と表示されますので、そのまま下にコピーして下さい。

つぎにグループの対応表をつくります。

どこに作ってもいいですが、ここではJ7~K9 に作ります。

まひろさんの説明だと次のような表になりますね。

 あいえ A
 あうお B
 いうえ C

最後にグループを表示させたいH2セルには次の数式を入力します。

 =VLOOKUP(G2,$J$7:$K$9,2,0)

これでH2セルには”A”と表示してくれます。

後はH2セルを下にコピーして下さい。

その他の組み合わせもあるでしょうから、その都度表を大きくしてください。

表には名前を付けると管理しやすいです。数式でそのまま名前を使えますしね。

また、エラーの場合は表示させないとか、グループによって色を変えるなどは表示形式や条件付き書式を使えば簡単にできますのでやってみてください。

もっとスマートにできる方法もあるかもしれませんが、基本のIF関数とVLOOKUP関数だけでできるのでとっつきやすいかと思います。数式は少しややこしいですが。

===補足===
ちょっとわかりにくかったですね。

表をそのまま貼り付けられたらすぐわかるんですが。

"B$1"としたのは「絶対参照」と言って、コピーしても変わらないようにする為の記号です。

ここではB1セルには”あ”、C1セルには”い”というように、1行目はタイトル行として表を作ったつもりなので、常に1行目を参照して欲しかったので「絶対参照」を使ったわけです。

B1セルに”あ”、C1セルに”い”とタイトル行を作られてますか?
そして2行目(”○”の行)からデータを入力されてますでしょうか?
確認してください。

ファイルを添付できたら簡単に説明できるんですけどね…。

この回答の満足度
  
とても参考になり、非常に満足しました。回答ありがとうございました。
お礼コメント

はやい回答ありがとうございました。
だいたいの内容は理解できましたが、
=IF(B2<>"",B$1,"")&IF(C2<>"",C$1,"")&IF(D2<>"",D$1,"")&IF(E2<>"",E$1,"")&IF(F2<>"",F$1,"")という形にすると空白がはき出されます。逆に
=IF(B2<>"",B$2,"")&IF(C2<>"",C$2,"")&IF(D2<>"",D$2,"")&IF(E2<>"",E$2,"")&IF(F2<>"",F$2,"")とするとうまく表示されます。

さらに、上記の物をコピーしたかったのですが=IF(B2<>"",B$1,"")の様に、$の方の数字が変わってくれません。

何度も申し訳ありませんが、是非ご教授お願い致します。
尚、次返信できるのは明日になりますがよろしくお願いします。

===解決しました!===

完全に理解できました。少し仕様を先入観で勘違いしていました。
お早い対応で本当に助かりました。お返事遅くなりましたが、ありがとうございました!

関連する質問・相談

Sooda!からのお知らせ

一覧を見る