• ベストアンサー

VLOOKUP関数??

勤務予定表を作っています。 別のシートで月間勤務予定表は完成しています。 日付 16 17 18 19 20 21 22・・・ 名前 A   早 早 早 休 休 遅 早・・・ B   遅 遅 早 早 早 遅 休・・・  C   休 休 遅 遅 早 休 休 ・ ・ もうひとつ別のシートで、日付を指定すれば、その日付の列を検索して表示させたいのですが、どのような関数を使えばよろしいのでしょうか? 21 ←日付を指定 A 遅 B 遅 ←このように表示をさせたいです。 C 休 ・ ・ 質問がわかりづらくて申し訳ございませんが、よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • telescope
  • ベストアンサー率54% (1069/1958)
回答No.1

質問の例ですと、2行目が空いているように見えますが、「日付」と「名前」は一つのセルに入れて、斜め罫線で区切ったほうが見栄えがよいと思います。 (スペース2~3個の後に「日付」を入力、Alt+Enterで改行して「名前」を入力、「書式」-「セル」の罫線タブで「\」の形の罫線を選択) 別シートのA1セルに日付が指定されているとして、 =VLOOKUP(A2,Sheet1!$A$1:$AC$10,MATCH($A$1,Sheet1!$A$1:$AC$1,0)) または、それぞれのシートで名前のならびが一致しているなら、 INDEX関数とROW関数を使ってもできます。 =INDEX(Sheet1!$A$1:$AC$10,ROW(),MATCH($A$1,Sheet1!$A$1:$AC$1,0)) もし、2行目が空いているのなら、ROW関数の後に1を加えて =INDEX(Sheet1!$A$1:$AC$10,ROW()+1,MATCH($A$1,Sheet1!$A$1:$AC$1,0))

sinkichi
質問者

お礼

お礼が遅くなりまして申し訳ございません。 参考になりました。ありがとうございました。

その他の回答 (4)

  • subri
  • ベストアンサー率28% (16/56)
回答No.5

VLOOKUPの横バージョンにHLOOKUPという関数があります。 VLOOKUPを使うことができれば、HLOOKUPも同じような物なのでおわかりかと思います。 もとの表が上から見出し、次の行からAさん、Bさんというレイアウトであれば Sheet2のA1に検索の日付、 B2に =HLOOKUP($A$1,Sheet1!$B$1:$H$4,ROW(),0) これを下までコピー。 ということでお望みの結果になります。

sinkichi
質問者

お礼

お礼が遅くなりまして申し訳ございません。 参考になりました。ありがとうございました。

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.4

 A列 1 21 2 A  遅 3 B  遅 4 C  休 データ領域を、A3:AF5 までとした場合、 A1: 21 A2: =INDEX(Sheet1!$A$3:$AF$5,ROW(A1),1) B2: =INDEX(Sheet1!$A$3:$AF$5,ROW(A1),MATCH(A$1,Sheet1!A$1:AF$1,1)) A2~B2 をマウス選択 フィルハンドル(+)をドラッグして、下にコピー

sinkichi
質問者

お礼

お礼が遅くなりまして申し訳ございません。 参考になりました。ありがとうございました。

  • air_blue
  • ベストアンサー率30% (3/10)
回答No.3

#2さんと同じ意見ですが、HLOOKUPがいいと思います。 ”sheet1”に月間勤務予定表(A、B、Cの3人、月31日と仮定。「A2」セルにAさんの名前、「A3」セルにBさんの名前、「A4」セルにCさんの名前。「B1」セルに1(日)、「C1」セルに2(日)・・・「AF1」セルに31(日)を入力) ”sheet2”に日付指定の勤務表を作る(「A2」セルにAさんの名前、「A3」セルにBさんの名前、「A4」セルにCさんの名前。「B1」は指定する勤務日を入力するセル)として、 「B2」セルは=HLOOKUP(B1,Sheet1!A1:AF4,2)、 「B3」セルは=HLOOKUP(B1,Sheet1!A1:AF4,3)、 「B4」セルは=HLOOKUP(B1,Sheet1!A1:AF4,4)、 と、こんなかんじでしょうか。 もっと良い方法があるかどうかわかりませんが、 ぱっと思いつくのはこれでした。

sinkichi
質問者

お礼

お礼が遅くなりまして申し訳ございません。 参考になりました。ありがとうございました。

  • sirokiyat
  • ベストアンサー率23% (204/867)
回答No.2

HLOOHUP関数を使えば、簡単じゃ無いでしょうか

sinkichi
質問者

お礼

お礼が遅くなりまして申し訳ございません。 参考になりました。ありがとうございました。

関連するQ&A