人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

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

1252770602
●拡大する

●質問者: nocona
●カテゴリ:コンピュータ インターネット
✍キーワード:ひとつ 人名 月曜日 現在 資格
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● SALINGER
●42ポイント

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

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

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)

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

◎質問者からの返答

すごい!!

ありがとうございます!

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

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

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


2 ● Mook
●28ポイント

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

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

◎質問者からの返答

ありがとうございます。

これでもできるか

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

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

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ