1252770602 【if関数にダブりがある場合】

現在ひとつの表があります→新しい表に並び替えたい(作り替えたい?)です。そのためにif関数を使おうと考えています。【現在】A行に氏名。B行に取得している資格名が入っています。ただし、一人がひとつの資格だけを取得しているわけではなく、個人によって違う資格を1〜4つほど取得しています。結果、A行にはいくつもの同じ人名。B行にはいくつもの同じ、もしくは別々の資格名がゴチャゴチャに並んでいます。それを→【結果】A行には氏名を。1列には資格名というふうに整理をし、取得している資格には「1」未取得のものには「2」と記入していきたいです。if関数の使い方を調べたのですが、氏名がだぶっている場合どうすればいいかが分かりません。教えてください!月曜日までに分からないとすごくすごく困るんです。どうかよろしくお願いいたします!

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2009/09/13 00:50:05
  • 終了:2009/09/20 00:55:03

回答(2件)

id:SALINGER No.1

SALINGER回答回数3454ベストアンサー獲得回数9692009/09/13 01:20:00

ポイント42pt

こういうのは、ピボットテーブルを使うと一発です。

ピボットテーブルについてはこちら。

http://hamachan.info/excel/piboto.html


この場合は、行フィールドに名前、列フィールドとデータフィールドには資格をドラッグしてください。

ただこの場合、条件を満たす数が入るので数字が入っているセルが1、空欄が2と別に表を作らないといけません。


数式だけでやる方法もあります。

例えば、もともとの表がこのように左上にあった場合

A B
1 名前 資格
2 佐藤貴子 国語
3 佐藤貴子 数学
4 佐藤貴子 理科
5 高橋俊 国語
6 高橋俊 英語
7 相川薫 数学
8 相川薫 社会
9 相川薫 体育

次のような、左上がA14セルの表の場合、

A B C D E F G
14 名前 資格
15 国語 数学 理科 英語 社会 体育
16 佐藤貴子 数式
17 高橋俊
18 相川薫

数式と書いてあるセルに次の式を入れて、縦横にコピーします。

=IF(SUMPRODUCT(($A$2:$A$9=$A16)*($B$2:$B$9=B$15))>0,1,2)

これで図のことができます。

id:nocona

すごい!!

ありがとうございます!

関数はうまくいかなかったのですが

ピポットテーブルだけで全部できました。

本当にありがとうございます!!

2009/09/13 14:20:04
id:Mook No.2

Mook回答回数1312ベストアンサー獲得回数3912009/09/13 01:56:36

ポイント28pt

下記の手順でどうでしょうか。

A列に氏名、B列に科目が入っていることを想定します。


(1)式の入力

D列の3行目以降に名前リスト、E2:J2 列に資格(国語、数学、理科、英語、社会、体育)を置きます。

E3 に下記の式を書きます(1000はA列のデータ範囲に合わせて変更してください)。

=IF(SUMPRODUCT(($A$2:$A$1000=$D3)*($B$2:$B$1000=E$2))>0,1,2)


(2)式のコピー

これをコピーして表の範囲に貼り付けます。


(3)式の削除

結果が正しく出たら、もう一度表の範囲をコピーし、そのままマウスを右クリックし、

「形式を選択して貼り付け」を選択。

「値」をチェックして、「OK」を押します。


(4)表の移動(整形)

これで元の表を消しても、新しい表が残りますので好きな位置に整形します。


参考:http://www.excel.studio-kazu.jp/lib/e3h/e3h.html

id:nocona

ありがとうございます。

これでもできるか

これから挑戦してみます。

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

2009/09/13 14:20:42

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません