[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『表から抽出』(平和太郎)
何年か前に質問させて頂き親切な回答をお答えいただいてました。
久しぶりに関数を利用したいと思い挑戦しましたがなかなかうまいこと行きません、ピポットテーブルはあまり使いたくないんで、
下記の表からでしたら
どのような求め方がいいのでしょうか?
A B C D
1 年 月 金額 得意先
2 2019 1 120 あ社
3 2019 1 110 い社
4 2019 1 120 あ社
5 2019 1 150 う社
6 2019 2 100 あ社
7 2019 2 120 い社
8 2019 2 100 あ社
2019.1 2019.2
あ社
い社
う社
< 使用 Excel:Office365、使用 OS:Windows10 >
えっ〜〜、、早いですねぇ(^^; 多分違うと思いますが、、せっかく書いたので。。 会社のところは必要数を選択した状態で↓配列 =IFERROR(INDEX(D2:D8,SMALL(IF(MATCH(D2:D8,D2:D8,0)=ROW(D1:D7),ROW(D1:D7)),ROW(D1:D7))),"") 年月のところは必要数を横に選択した状態で↓配列 =IFERROR(TRANSPOSE(INDEX(A2:A8&B2:B8,SMALL(IF(MATCH(A2:A8&B2:B8,A2:A8&B2:B8,0)=ROW(A1:A7),ROW(A1:A7)),ROW(A1:A7)))),"") 集計は↓として配列 =SUM(IF(($D$2:$D$8=$G2)*($A$2:$A$8&$B$2:$B$8=H$1),$C$2:$C$8)) 一応↓みたいになりました。。。
20191 20192 あ社 240 200 い社 110 120 う社 150 0 (SoulMan) 2020/05/16(土) 16:03
簡単だったですか・・ どんな数式で解決したのか教えて頂けませんか?
私はこのデータが厄介だなぁと思っていたんですが。 ↓ 2019.1
(半平太) 2020/05/16(土) 16:08
私のは年月を↓ =IFERROR(TRANSPOSE(INDEX(A2:A8&"."&B2:B8,SMALL(IF(MATCH(A2:A8&B2:B8,A2:A8&B2:B8,0)=ROW(A1:A7),ROW(A1:A7)),ROW(A1:A7)))),"") 集計を =SUM(IF(($D$2:$D$8=$G2)*($A$2:$A$8&"."&$B$2:$B$8=H$1),$C$2:$C$8)) にして下さい。。。 (SoulMan) 2020/05/16(土) 16:14
集計表が ↓ だとして
F G H 1 2019/1 2019/2 2 あ社 240 200 3 い社 110 120 4 う社 150 0
G1、H1は 2019/1、2019/2 と入力 表示形式〜ユーザー定義 yyyy/m
G2 =SUMIFS($C:$C,$A:$A,YEAR(G$1),$B:$B,MONTH(G$1),$D:$D,$F2) 右・下コピー
まさか、1行目の年月や社名も関数で抽出ってことないですよね?
参考まで (笑) 2020/05/16(土) 16:30
出来ましたというのは、
フィルターを使って集計して貼り付けしました。
これでは全然駄目ですね。
(平和太郎) 2020/05/16(土) 17:14
「2019.1」が「2019-1」でよければ
(1) G1セル =TRANSPOSE(UNIQUE(A2:A8&"-"&B2:B8)) (2) F2セル =UNIQUE(D2:D8) (3) G2セル =SUMIFS(C:C,A:A,YEAR(G1#),B:B,MONTH(G1#),D:D,F2#)
注:#マークはスピル範囲演算子
<結果図> 行 __A__ _B_ __C__ ___D___ E _ F _ ___G___ ___H___ 1 年 月 金額 得意先 2019-1 2019-2 2 2019 1 120 あ社 あ社 240 200 3 2019 1 110 い社 い社 110 120 4 2019 1 120 あ社 う社 150 0 5 2019 1 150 う社 6 2019 2 100 あ社 7 2019 2 120 い社 8 2019 2 100 あ社
(半平太) 2020/05/16(土) 17:32
(平和太郎) 2020/05/16(土) 18:28
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.