dポイントプレゼントキャンペーン実施中!

いつもお世話になります。

1年生から2年生に進級した子供たちが、
どのクラスに行ったのか
わかる資料を作りたいと思っています。


旧名簿現状は    A列(空欄) B列(旧クラス) C列(名前)

新名簿の現状は  B列(新クラス) C列(名前)


新名簿は、新しい2年生のクラス順にならんでいるので、
C列の名前は旧名簿とは並びが違います。(生徒数は一緒)

名前を基準にして、新名簿のクラスを
旧名簿のA列に貼りつけたいのですが
どのような関数をつかえばいいでしょうか?

具体的に使い方を教えていただけると助かります。

どうぞ、よろしくお願いします! 

A 回答 (3件)

ん?生徒に同姓同名がいるのかいないのかも、把握していないという事ですか?


それじゃしょうがないので、エクセルに代わりにやらせることにしましょう。

それから
>やってみたのですが
>どうもうまくできません…う~ム

具体的に「あなたは何をしたのか」とか「うまくいかないってどういうこと?」とかキチンと情報提供してくれないと、どこが間違っているとかこうしましょうとかお話しすることもできません。



でもイチイチ返答も待ってられませんし、あなたも説明したくないでしょうから次の通りに手を動かして作成し直してください。

1.新名簿のシート名を「Sheet1」にする
  新名簿の名前列をA列に移動する
  新名簿の新しいクラス列をB列に移動する

2.旧名簿のシート名を「Sheet2」にする
  旧名簿の名前列をA列に移動する
  旧名簿の古いクラス列をB列に移動する
  旧名簿の新しいクラス列をC列に移動する

3.旧名簿のC2セルに
  =IF(COUNTIF(Sheet1!A:A,A2)>1,"同姓同名",VLOOKUP(A2,Sheet1!A:B,2,FALSE))
  と記入し、リスト下端までコピー貼り付ける

4.ちゃんと計算ができたことを確認してから、C列をコピーし、その場で形式を選んで貼り付けの「値」にマークして貼り付け、計算結果を値に変えて置き換える
  必要に応じて元の表の体裁に列を入れ替える
    • good
    • 0
この回答へのお礼

詳しいやり方を教えていただいてありがとうございます!
実は、加工したいデータが まだ手元にないのですが
自分で作ったダミーデータでやってみたら
うまく行きました! ありがとうございます!

ちなみに、クラスと出席番号のように
2列のデータを貼りつけたい場合は、
それぞれに、教えていただいた式をあてはめて
入れればよいということですよね?

お礼日時:2012/05/01 23:11

同姓同名などの場合には連絡先である電話番号などの記載が有ればお互いの区別がつけられることが多いでしょう。

また、新しい学年になって転校などの場合には新名簿には氏名がないことになりますね。それらを表示させるとともに旧名簿には新名簿でのクラス名の他に出席番号も表示させるとしたら次のようにすればよいでしょう。
旧名簿をシート1としてA1セルには新クラス名、B1セルには出席番号、C1セルには旧クラス、D1セルには名前、E1セルには連絡先の電話番号の項目名が有り2行目から下方にデータが有るとします。
F列を作業列としてF2セルには次の式を入力して下方にドラッグコピーします。

=D2&E2

シート2は新名簿としてA列は空の行、B1セルには新クラス、C1セルには出席番号、D1セルには名前、E1セルには電話番号の項目名が有りデータは2行目から下方に並んでいるとします。
F2セルにはシート1と同じように =D2&E2 の式を入力して下方にドラッグコピーします。
以上で準備は終了です。
シート1のA2セルには次の式を入力してB2セルまでドラッグコピーしたのちに下方にもドラッグコピーします。

=IF($D9="","",IF(COUNTIF(Sheet2!$D:$D,$D9)=1,INDEX(Sheet2!$B:$C,MATCH($D9,Sheet2!$D:$D,0),COLUMN(A8)),IF(COUNTIF(Sheet2!$D:$D,$D9)>1,IF(COUNTIF(Sheet2!$E:$E,$E9)=1,INDEX(Sheet2!$B:$C,MATCH($E9,Sheet2!$E:$E,0),COLUMN(A8)),IF(COLUMN(A8)=1,"同姓同名で一致する電話番号が無い","")),IF(COLUMN(A8)=1,"該当する氏名がシート2にはない",""))))

上の式では同姓同名が有る場合には電話番号を考慮した検索を行い、それでも検索できない場合には同姓同名で一致する電話番号が見当たらないとの表示がされますし、新名簿に該当者がない場合にも表示がされます。
    • good
    • 1

そのぐらいの人数でしたら「同姓同名」は事実上無視できる(あったら目視でその子だけ手入力してください)として



旧名簿のA2セルに
=INDEDX(新名簿!B:B,MATCH(C2,新名簿!C:C,0))
以下コピー
のようにします。

この回答への補足

早々にありがとうございます♪
約1000人のデータですが、もし同姓同名があった場合は
その部分だけエラー表示になるのでしょうか?

あと、教えていただいた式で
やってみたのですが
どうもうまくできません…う~ム

なぜだぁ~

補足日時:2012/05/01 18:24
    • good
    • 2

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