Excel2007 表からの抽出方法を教えてください!

このQ&Aのポイント
  • Excel2007で年間スケジュール表から特定の月の日にちと場所を抽出する方法を教えてください。
  • 試した関数ではうまくいかず、困っています。お助けください。
  • 勤務表に出勤場所を自動で表示できるような表を作りたいです。
回答を見る
  • ベストアンサー

Excel2007 表からの抽出で・・・

お世話になります。 何日がかりで頑張ってますが、私の頭では限界で(^_^;) お助けください<m(__)m> Excel2007で作成 年間ねスケジュール表があり、その中から別シートの表に抽出方法がわかりません・・・ いろんな関数で試してみましたがギブアップです・・・(T_T) sheet1に「年間スケジュール」があり↓ A |B | C| D| E| F| G |H |I |J |K |L M N O ------------------------------  4月  | 5月  |  6月  | 7月・・・  -------------------------- 1|日|A町|1|火|B町|1|金|A町|・・・・ ----------------------------- 2|月|D町|2|水|C町|2|土|B町|・・・・ ---------------------------- 3|火|B町|3|木|B町|3|日|A町|・・・・ この表から勤務表↓に、その月の日にちのところに出勤場所を自動で表示できるような表を作成したいのですが・・・・ 2012年4月(←手入力して毎月変更) 日 曜日 出勤場所 1 | 火 | A町 ------------------- 2 | 水 | D町 ------------------- 3 | 木 | B町 ---------------- 4 | 金 ------------------- 5 | 土 | ---------------- 6 | 日 | わかりづらい質問ですみません・・・ よろしくお願いします・・・

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

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

お示しの表がシート1に有るとして4月や5月と1行目に表示されているデータは例えば2012年4月と入力してセルの表示形式で4月のようになっているとします。 そこでお求めの表をシート2に表示させるとしてA1セルには2012年4月のように入力します。セル自体は2012/4/1のように認識されています。 そこでA2セルには日付、B2セルには曜日、C2セルには勤務地と文字を入力します。 A3セルには次の式を入力してセルの表示形式で d のように設定します。下方にドラッグコピーします。 =IF(MONTH(A$1-1+ROW(A1))<>MONTH(A$1),"",A$1-1+ROW(A1)) B3セルには次の式を入力して下方にドラッグコピーします。 =IF(A3="","",TEXT(A3,"aaa")) C3セルには次の式を入力して下方にドラッグコピーします。 =IF(A3="","",INDEX(Sheet1!$A$1:$AV$33,ROW(A1)+3,MATCH($A$1,Sheet1!$A$1:$AV$1,0)+2)&IF(AND(INDEX(Sheet1!$A$1:$AV$33,ROW(A1)+3,MATCH($A$1,Sheet1!$A$1:$AV$1,0)+2)<>0,INDEX(Sheet1!$A$1:$AV$33,ROW(A1)+3,MATCH($A$1,Sheet1!$A$1:$AV$1,0)+3)<>0),","&INDEX(Sheet1!$A$1:$AV$33,ROW(A1)+3,MATCH($A$1,Sheet1!$A$1:$AV$1,0)+3),IF(INDEX(Sheet1!$A$1:$AV$33,ROW(A1)+3,MATCH($A$1,Sheet1!$A$1:$AV$1,0)+3)<>0,INDEX(Sheet1!$A$1:$AV$33,ROW(A1)+3,MATCH($A$1,Sheet1!$A$1:$AV$1,0)+3),""))) 式が長くなっているのは午前と午後で勤務地が違っているような場合にカンマを付けた表示にするためです。

eomama
質問者

お礼

回答ありがとうございます。 私の頭ではちょっと難しいかな(^_^;) デモ 理解できるように頑張ります! ありがとうございました<m(__)m>

その他の回答 (1)

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.2

Sheet2のE1セルに、 2012年4月(←手入力して毎月変更) を記入することにして、 Sheet2のA1セルに、以下の式を入れ、 =HLOOKUP(MONTH(E1)&"月",Sheet1!1:1,1,FALSE) Sheet2のA4セルに、以下の式を入れて、下にドラッグコピーし、 =HLOOKUP($A$1,Sheet1!$1:$34,ROW(),FALSE) Sheet2のB4セルに、以下の式を入れて、下と右2列にドラッグコピー、してみて下さい。 =INDIRECT("Sheet1!R"&ROW()&"C"&MATCH($A$1,Sheet1!$1:$1)+COLUMN()-1,0)

eomama
質問者

お礼

回答ありがとうございます。 記載通り入力してできました♪ 勤務地まで表示されるとありがたいのですが(^_^;)

関連するQ&A

  • 【頭良い方HELP】スケジュール表

    スケジュール表を作成しているのですが、 曜日によりスケジュールが異なる日付の計算が発生するため、 日付の計算(E~G列)がうまくいきません。 どなたか教えてください。 ■スケジュール表について ・月次でのスケジュール表を作成しています ・曜日によりスケジュールが変更になります ※祝日も日曜日と同様にサイクルに含まれません ・サイクル表に基づき、E~G列の日付を自動計算する(計算箇所はここだけです) 例)5/1(木)でいうと、 サイクル表は木曜日なので、以下のサイクルになります。    1 2 3 4 5 6 7 8    木 金 土 日 月 火 水 木 木  A  B  C D E    なので、スケジュール表には、以下のように計算されるようにしたいです。              A   B   D 5/1 木  5/1  5/2  5/7  内容は以上になります。 ※参考にスケジュール表とサイクル表の画像を添付しているので、ご確認ください。 不明点あれば、お問合わせください。 宜しくお願いします。

  • 車両運行管理表を作りたいです。エクセル2003 関数教えてください。

    いつもお世話になります。 エクセル勉強不足なのか行き詰ってしまったので、みなさんのお知恵を借りたいです。 sheet1に下記のような入力シート作成しました。(例)   A   B    C        D 1 曜日 日付   出発メーター  帰社メーター 2 月  08月1日  1000      1500 3 火  08月2日  1500      1900 4 水  08月3日  1900      2500 5 木  08月4日  2500      3000 6 金  08月5日  3000      3500 7 土  08月6日  3500      4000 sheet2には期首からの曜日と日付が上記の内容と同じで、1年間作成してあります。     A   B       C     D 1   曜日 日付   出発メーター  帰社メーター 2   月  08月1日   3   火  08月2日   -----------省略-----------------  365 金  07月30日   366 土  07月31日   この状態でsheet1のB2:B7間の値とsheet2のB2:B366の値が完全一致したら、sheet2のC2:C366とD2:D366に値を返す事をしたいです。 sheet1が入力フォームでsheet2が表みたいな使い方をしたいのです。 これの関数教えてください。補足必要なら言って下さい。よろしくお願いします。

  • エクセル関数で時間を別の表に分ける

    いつもお世話になっております。 下記のことはエクセル関数で、どうしたらできるのか教えてください。 Sheet1    A    B    C      D  1 あああ 大阪  月・火・水 10:00-11:00 2 いいい 大阪  月     10:00-12:00 3 ううう  東京  火・水   11:00-12:00 4 えええ 福岡  水     11:00-12:00 5 おおお 福岡  木     15:00-16:00 シート1には【A】列に名前 【B】列には地名 【C】列には曜日、【D】列には時間が入っています。 シート1の表を参考にシート2は下記のような表をどう入力すればいいですか?    A          B         C         D         E         F         G   1  月        月         火           火          水        水          木  210:00-11:00 10:00-11:00  10:00-11:00   10:00-11:00  10:00-11:00   10:00-11:00    5:00-16:00 3 大阪                  大阪        東京        大阪       東京        福岡 4 あああ                 あああ        ううう      あああ      ううう      おおお 5 いいい 6 7 811:00-12:00 11:00-12:00  11:00-12:00   11:00-12:00    11:00-12:00   11:00-12:00 9 大阪                              東京         福岡      東京 10いいい                           ううう         えええ     ううう とっても見にくい参考で申し訳ございません。 よろしくお願いします。

  • Excelで シフト表作成中。(長文で

    Excelで、アルバイトのシフト表作りをしています。 あまり詳しくなくて、本を見たり このサイトで検索して作っていたのですが、 みなさんのお力を お借りできたらと思い、質問させていただきます。 今 作ってるのが、↓下のような シフト表なんですが、   A   B   C    D 1     2    3 ID       111   222 4 名前      梅   竹 5 1日  火   14   16 6 2日  水   16 7 3日  木       15 8 4日  金   14           この↑シートに それぞれの出勤時間を入力すると、 その入力した人だけを (別のシートの)その日付けの出勤表 (のセル)へ、自動的に データーが移るようにしたいと思っています。   A  B C D C 1 ID 2007年5月1日(火) 2 ( ) (     ) 3 ( ) (     ) うまく 説明出来ませんが すみません。 どなたか、アドバイスを よろしくお願いしたします。    

  • VLOOKUP?sheet1は固定で

    sheet1にこういったリストがあったとします。 (「,」は列が変わるという意味です。) 08/02/01 (金),20,A 08/02/02 (土),15,A 08/02/03 (日),32,A 08/02/04 (月),10,A 08/02/05 (火),2,A 08/02/06 (水),0,A 08/02/07 (木),5,A 08/02/08 (金),8,A 08/02/09 (土),9,A 08/02/01 (金),38,B 08/02/02 (土),4,B 08/02/03 (日),55,B 08/02/04 (月),1,B 08/02/05 (火),2,B 08/02/06 (水),8,B 08/02/07 (木),21,B 08/02/08 (金),4,B 08/02/09 (土),1,B 08/02/01 (金),8,C 08/02/02 (土),6,C 08/02/03 (日),5,C 08/02/04 (月),1,C 08/02/05 (火),5,C 08/02/06 (水),3,C 08/02/07 (木),4,C 08/02/08 (金),52,C 08/02/09 (土),2,C 長さは2/1-2/9固定でなく、例えば1/28-5/1かもしれません ただ、AもBもCも同じ長さとします。 また、このシートは触りたくないです。 でsheet2にて 2/2-2/8(任意です。)とした場合 なんらかの式を入れることで A,72 B,95 C,76 と、2/2-2/8の合計値を出すようなことはできますでしょうか? どうぞよろしくお願いいたします。

  • 日進月歩リンク表

    このような表に、 日付 曜日 商談数 成約数 成約率 実績 着地 1 土 2 日 3 月 4 火 5 水 6 木 7 金 8 土 9 日 10 月 11 火 12 水 13 木 14 金 15 土 16 日 17 月 18 火 19 水 20 木 21 金 22 土 23 日 24 月 25 火 26 水 27 木 28 金 29 土 30 日 下記のデータが他のシートからリンクされています。 (これは日々、更新されています。) 日付     商談数  成約数 成約率   実績     着地 9/3 月 12件  2件   17%  ¥160,000  ¥890,000 このリンクされているデータを上記のカレンダーの該当する日付の行に貼り付けられていくにはマクロを組むしかないのでしょうか?

  • 作った表から一覧表を作成をしたい

    複数店舗の人員管理をしていますが、期日内に仕事が間に合わないので、VBEで解決できる方教えてください。 下記の表を   A C  D   E   F  G  H  I … 1   [   山田   ][   佐藤   ]…  2 日 曜 応援先 入  退 応援先 入  退 … 31/1 火 A店  9:00 19:00 … 41/2 水            B店 9:00 13:00… 51/3 木 C店  9:00 19:00 B店 9:00 18:00…          ・          ・ このタイムカード状のシートから一覧表   A B C   D   E F … 6 日 曜 応援先 氏名 入 退 … 71/1 火 A店   山田 9:00 19:00… 81/2 水  B店  佐藤 9:00 13:00… 91/3 木  C店  山田 9:00 19:00… 101/3 木 B店  佐藤 9:00 18:00… ・         ・ 以前にも似たような質問をしたのですが、 自分ではうまく転記されません。 D1:F1,G1:I1は結合してるのですが、しない方がやりやすいのでしょうか?上の表が見にくかったらすみません。誰か回答お願いします。

  • 全体の勤務表から、個人のみの時間帯を抽出

    現在、全体の勤務表で以下のような様式を使用しています。   A  B  C  D  E  F ・・・ 1    1  2  3  4  5 ・・・ ←日付    2    月  火  水  木  金 ・・・ ←曜日 3  0:00 A  B  C  D  E ・・・ ←A~Eは名前 4 0:30 A  ・  ・  ・  ・ 5 1:00 A  ・  ・  ・ 6 1:30 A  ・  ・ 7 2:00 A  ・ ・ ・ ・ 上記のように30分刻みが全体の勤務表(日勤夜勤を含め)になっているのですが、これだと、人数+30分刻みの時間により醜い感じになっています。上記の勤務表から、個人個人の時間帯を抽出できれば・・・と思っています。 例:Aさん 1日0:00~2:00 Bさん 2日0:00~2:00        (出勤) (終業) のように、( : ~ : )と個人個人での出し方を教えて頂きたいと思います。上記の醜い表は制度請求上変更が難しいので、上の表のままできればと思います。 よろしくお願い致します。

  • 当番表をエクセルで作りたい

    今現在社内での月ごとの当番表を作っているのですが、曜日に合わせて自動で入力できるようにしたいです。       1  2  3  4  5  6  7  8  9       月 火 水 木 金 土 日 月 火 社員1 A   ○    ○           ○ 社員2 B     ○      ○ 社員3 B     ○      ○ 社員4 A   ○    ○           ○ 横に日にちと曜日、縦に社員の名前とシフト名を並べています。 シフト名がAならば火、木当番。 Bならば水、土が当番という形で○をつけています。 そしてこのシフト名はEまである状況です。 社員数が30名ほどあるし、並び順は年齢順ですので一人ずつ入れると大変です。 客先への出張があって、来月はシフトAからDに当番変更ということがよくあったりします。 なのでこのシフト名を変えれば自動で曜日に合わせて○を入れてくれるようにしたいのです。 いろいろ考えましたが、自分ではどうしてもうまく作れません。 どうかよろしくお願いします。

  • エクセルで作る月間表 その2/3

    たびたびお世話になっております 再びエクセルに関する質問なんですが、 たとえばA1に「7月」 A2から順次「1日」、「2日」・・・「31日」 B列に曜日が表示され、 その表の下に、その月の曜日をカウントした表を作りたいのですが、 2005年の7月なら 日曜が5日(金、土も5日) 月曜が4日(火、水、木も4日) どのような式で求められるのでしょうか? 賢者のみなさん、ご教授をよろしくお願いいたします