• 締切済み

Excelの集計表で1ヶ月分別表に抜き出したいです

Excel2010を使用しています。   A    B   C   D   E   F   G 1         1月         2月 2     売上 請求 残高 売上 請求 残高 3 本社 1000  800 200  4 支店 800  650 150 5 営業 600  300 300  上記のような集計表に一年分の数値を月ごとに打ち込んでいます。 これを下記のような1か月分の別表に抜き出して印刷をかけたいのですが。   A    B   C   D   1 1月  売上 請求 残高 2 本社 1000  800  200 3 支店  800  650  150 4 営業  600  300  300 A1のところに月を入力すれば、B2:D4のところに集計表の数字が出るような。 VLOOKUPやHLOOKUP、INDEX等ネットで探して関数と格闘して何日かやってみましたが 上手くできませんでした・・・。 別表は同じシートでも別シートでも可能です。 関数を利用して作りたいので、よろしくお願いします。

みんなの回答

  • basic_gg
  • ベストアンサー率50% (14/28)
回答No.5

>1か月の表でB2とC2の間に別のデータが入るので >実際は支店の売上はD2となるのですが >関数のどこを変更すれば参照が上手にいくか 勘弁して下さい。 "B2とC2の間に別のデータが入る"なら "売上はD2と"なりません。売上はB2ですから。 "B2とC2の間に別のデータが入るので"なら 本社,支店,営業すべてで、 B列~がC列~になると解釈します。 "支店の売上はD2となるのですが"のように 支店だけが変わるわけではないでしょう。 あなたの希望通りに、 B2~D2をコピーして、D2に貼り付けてください。 (タテ方向にオートフィルできるように作りましたが) (ヨコ方向にオートフィルはききません。 質問時にダミーデータを入れておきましょう。

noname#204879
noname#204879
回答No.4

[No.2お礼]へのコメント、 》 こちらも参照セルの位置や実際の欄がすぐ下になかったりするので… 貴方が最初からそのことを明記しておけば、私は無駄な回答をせずに済んだことをご承知おきください!

  • basic_gg
  • ベストアンサー率50% (14/28)
回答No.3

1.初期設定 集計表をSheet1,1ヵ月の表をSheet0とします。 1ヵ月の表のA1セルを、書式設定をユーザー定義の #"月" にし、半角で1~12を入力します。 (1を入力すると1月と表示すると同時に、入力した数値を他セルで利用します) 1ヵ月の表で、B1=売上、C1=請求、D1=残高 を入力しておきます。 2.式(コピーして1ヵ月の表に貼り付けてください) A2=IF(($A$1<0)+($A$1>12)+(OFFSET(Sheet1!$A$1,ROW(A2),0)=""),"",OFFSET(Sheet1!$A$1,ROW(A2),0)) B2=IF(($A$1<1)+($A$1>12)+(OFFSET(Sheet1!$A$1,ROW(A2),0)=""),"",OFFSET(Sheet1!$A$1,ROW(A2),$A$1*3-2)) C2=IF(($A$1<1)+($A$1>12)+(OFFSET(Sheet1!$A$1,ROW(A2),0)=""),"",OFFSET(Sheet1!$A$1,ROW(B2),$A$1*3-1)) D2=IF(($A$1<1)+($A$1>12)+(OFFSET(Sheet1!$A$1,ROW(A2),0)=""),"",OFFSET(Sheet1!$A$1,ROW(C2),$A$1*3)) A2~D2を選択して、下にオートフィルする。

NBY
質問者

お礼

ありがとうございます。 こちらの関数ではエラーが出ずに近いところのデータを返してくれています。 1か月の表でB2とC2の間に別のデータが入るので実際は支店の売上はD2となるのですが 関数のどこを変更すれば参照が上手にいくか教えていただけないでしょうか。 よろしくお願いします。

noname#204879
noname#204879
回答No.2

添付図参照 Sheet2!B2: =INDEX(Sheet1!3:3,MATCH($A$1,Sheet1!$1:$1,0)+COLUMN(A1)-1) ただし、Sheet1 の1行目の月名(1月、2月、3月、…)は、列B、E、H、…(の3列毎)に入力して、各列以右3列を選択して“選択範囲内で中央”に配置しています。

NBY
質問者

お礼

ありがとうございます。 こちらも参照セルの位置や実際の欄がすぐ下になかったりするので教えていただいた数式ではエラーになってしまいました・・・。 改造してできないか試してみます。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.1

たとえばSheet1のB1,E1・・・セルに「1月」「2月」・・・と入力されているなら、以下の式を表示シートのB2セルに入力して右方向および下方向に3つづつオートフィルコピーしてください。 =INDEX(Sheet1!$A$3:$AK$5,ROW(A1),MATCH($A$1,Sheet1!$A$1:$AK$1,0)+COLUMN(A1)-1)

NBY
質問者

お礼

早々にありがとうございます。 例として作った1ヶ月の表は簡単にしたのですが実際の表は承認印の場所や表題があったりともう少し複雑なので参照セルの位置や実際の欄がすぐ下になかったりするので教えていただいた数式ではエラーになってしまいました・・・。 改造してできないか試してみます。

関連するQ&A