• 締切済み

エクセル関数について教えてください

エクセル関数についてご教授ください。 添付図のようなデータ入力シートがあり入力者は山田、太田、斉藤の3名が入力します。 今、山田さんが7/29日の数学の列の10:40-12:10行のセルに「伊藤」と入力し、太田さんが同日のEnglishの列の13:00-14:30行のセル に「伊藤」と入力し、さらに斉藤さんが同日の国語の列の14:40-16:10行のセルに「伊藤」と入力した場合にsheet2(シート名:伊藤)の表に図で示すようなデータを自動で入力させたいと考えています。 sheet1の日付は横に1週間分あります。同様にSheet2(伊藤)にも同じ日付で1週間分あります。 このようなことは可能でしょうか? エクセル関数初心者で非常に困っています。 どうかご指導いただきたいです。

みんなの回答

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

添付図がよく見えませんのでこちらが勝手に表を想像してその解決法を示します。 シート1のB2セルには1週間の始まりの日である例えば7月29日を入力します。科目が例えば数学、English,国語、社会と4教科であるとしますとB2セルからE2セルまでを選択してそれを右横方向にドラッグしていきます。F2セルには7月30日…と表示されますね。1週間ですからAC2セルまでドラッグコピーします。 次にB3セルに数学、C3セルにEnglish、D3セルに国語、E3セルに社会と入力したのちにB3セルからE3セルを選択して上と同様にAC3セルまで横にドラッグコピーします。 A4セルから下方には例えば 10:40-12:10 13:00-14:30 14:40-16:10 16:20-17:50 のように入力します。 これらの表の中で該当するセル位置に例えば伊藤の文字が入力されているとします。 そこで作業列を作って対応することにします。 B10セルに次の式を入力して右横方向にAC10セルまでドラッグコピーします。 =IF(ISERROR(LOOKUP("ーー",B4:B9)),"",LOOKUP("ーー",B4:B9)&INDEX($B$2:$AC$2,INT((COLUMN(A1)-1)/4)*4+1)&"/"&MATCH(LOOKUP("ーー",B4:B9),B4:B9,0)) ここでLOOKUP関数の引数で使われているーは半角英数モードではなくひらがなモードで入力することが必ず必要です。一旦式を確定したのちにーを挿入するような形で式を完成させるのがよいでしょう。 お求めの表をシート2に表示させることにします。 A1セルには調べたい氏名で例えば伊藤と入力します。 B1セルには次の式を入力してH1セルまでドラッグコピーします。 =INDEX(Sheet1!$B$2:$AC$2,COLUMN(A1)*4-3) シート1で入力されている1週間分の日付のシリアル値が表示されますのでそれらの範囲を選択してからセルの表示形式を日付にしてください。 A2セルには次の式を入力して下方にドラッグコピーします。 =IF(Sheet1!A4="","",Sheet1!A4) その後にB2セルには次の式を入力してH2セルまで横にドラッグコピーしたのちに下方にもドラッグコピーします。 =IF(COUNTIF(Sheet1!$A$10:$AC$10,$A$1&B$1&"/"&ROW(A1))=0,"",INDEX(Sheet1!$A$3:$AC$3,MATCH($A$1&B$1&"/"&ROW(A1),Sheet1!$A$10:$AC$10,0))) これでA1セルに入力された伊藤の科目名が表示されることになります。 お示しの表とは違っているかもしれませんが上を参考にして表を完成させることができるでしょう。

ejuschool
質問者

補足

すみません =IF(ISERROR(LOOKUP("ーー",B4:B9)),"",LOOKUP("ーー",B4:B9)&INDEX($B$2:$AC$2,INT((COLUMN(A1)-1)/4)*4+1)&"/"&MATCH(LOOKUP("ーー",B4:B9),B4:B9,0)) この式の”--”の部分には、伊藤と入力するのでしょうか?

関連するQ&A