[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『特定の行だけ集計』(ぷりん)
困ってます。
3000人以上の会費の内訳を人ごとに月次で管理しているのですが
ある期間に入金した会費のうち、特定の内訳だけを簡単に集計する
方法がありましたら教えていただけないでしょうか。
1日かけて集計したら間違えてました。
簡単に正確にできないかと悩んでます。
ご指導ください。
(表の構成)
表:会費の管理表
A列:会員番号
B列:会員名
C列:内訳
D列〜:4月〜
1行目:見出し
●内訳は10項目・・・入金日〜i
●1項目目は入金日
●集計は4項目目(c)、7項目(f)、8項目(g)
●期間は6月29日から7月30日まで→集計期間は変動します。
●金額は空欄があります。
表がキレイに表示できてませんが内訳はC列です。
1 会員番号 会員名 内訳 4月 5月 6月 7月・・・
2 180001 田中 入金日 6/23 6/23 6/30 7/15
3 a 100 100 150
4 b 200 150
5 c
6 d 300 360
7 e 450
8 f 500 100
9 g 150 200
10 h 800 350
11 i 640 920
12 180002 鈴木 入金日 7/8 7/8 8/5 8/5
13 a
14 b
15 c
16 d
17 e
18 f
19 g
20 h
21 i
< 使用 Excel:Excel2016、使用 OS:Windows10 >
(マナ) 2019/03/08(金) 21:38
見ていただきありがとうございます。
集計結果は、月毎に対象期間の内訳合計を表示しております。
今はフィルターで入金日に色をつけて全体表示にし、ひとつひとつ
コピーして集計してます。
何かよい方向がありましたら教えていただけないでしょうか。
4月 5月 6月・・・ c f g
(ぷりん) 2019/03/08(金) 22:02
>集計結果は、月毎に対象期間の内訳合計を表示しております。
対象機関とは、↓の集計期間と同じ意味ですか?
>●期間は6月29日から7月30日まで→集計期間は変動します。
質問の例では、集計結果にはどんな数値が入りますか?
(マナ) 2019/03/08(金) 22:33
>1 会員番号 会員名 内訳 4月 5月 6月 7月・・・
1行目の、4月 5月 6月 7月・・・ とはどういう意味ですか?
(マナ) 2019/03/08(金) 22:39
こんな表ですか
-A- -B- -C- -D- -E- -F- -G- 1 会員番号 会員名 内訳 4月 5月 6月 7月 2 180001 田中 入金日 6/23 6/23 6/30 7/15 3 a 100 100 150 4 b 200 150 5 c 6 d 300 360 7 e 450 8 f 500 100 9 g 150 200 10 h 800 350 11 i 640 920 12 180002 鈴木 入金日 7/8 7/8 8/5 8/5 13 a 14 b 15 c 16 d 17 e 18 f 19 g 20 h 21 i
(マナ) 2019/03/08(金) 22:53
見ていただきありがとうございます。
〉人ごとに集計するわけではないのですか?
例の表が見づらく申し訳ございません。
人ごと?とは該当する人を抽出すると言うことでしょうか?
最後に合計すればよいので人ごとに簡単にできるならどちらでも大丈夫です。
〉対象機関とは、↓の集計期間と同じ意味ですか?
同じ意味です。
漢字間違えてましたっ!
上手く説明できずご迷惑をおかけしております。
〉質問の例では、集計結果にはどんな数値が入りますか?
例は金額を省略してますので例えば、
田中さんは集計期間内は4月〜7月
鈴木さんは集計期間内は4月〜5月だけの場合にc,f,gが
下記の金額だった場合。
(田中さん)
4月 5月 6月 7月 c 100 200 550 600 f 300 150 480 230 g 650 130 650
(鈴木さん)
4月 5月 6月 7月 c 350 200 420 f 250 100 480 230 g 160 600 130 650
(結果)
4月 5月 6月 7月 c 450 400 550 600 f 550 250 480 230 g 160 1250 130 650
となります。
(ぷりん) 2019/03/08(金) 22:59
追加質問の件ですが毎月の会費を該当月毎に管理してます。
なので、田中さんの4月は4月分の会費を6/23に入金があった
事を示しております。
項目は会費の内訳です。→金額が入力されてます。
●●費用みたいな感じです。
〉こんな表ですか
はい。
C列が内訳でD列から4月〜となっております。
(ぷりん) 2019/03/08(金) 23:10
(マナ) 2019/03/08(金) 23:20
〉田中さんの4月と5月は、
〉入金日が6/23なので、対象期間外で
〉集計はしないということで、あっていますか?
あってます。
(ぷりん) 2019/03/08(金) 23:33
(マナ) 2019/03/08(金) 23:36
〉実際のデータで列は、何月まであるのでしょうか?
4月から翌年の3月までです。
(ぷりん) 2019/03/08(金) 23:46
1)Q1に、6/29、Q2に7/30と入力
2)R2に =C2と入力し、R11までフィルコピー
3)S5に数式:=IF(OR(D2<$Q$1,D2>$Q$2),"",D5)
4)S8に数式:=IF(OR(D2<$Q$1,D2>$Q$2),"",D8)
5)S9に数式:=IF(OR(D2<$Q$1,D2>$Q$2),"",D9)
6)R2:S11を選択し、下方向にフィルコピー
7)S1に、=D1と入力し、右方向にフィルコピー
8)R〜AD列を「統合」機能で集計
9)統合先で、オートフィルタで1列目がc,f,gの行を抽出
10)抽出された行を、好きなところにコピペ
(マナ) 2019/03/09(土) 00:01
(マナ) 2019/03/09(土) 00:06
3)S5に数式:=IF(OR(D2<$Q$1,D2>$Q$2),"",D5) で、AD列までフィルコピー 4)S8に数式:=IF(OR(D2<$Q$1,D2>$Q$2),"",D8) で、AD列までフィルコピー 5)S9に数式:=IF(OR(D2<$Q$1,D2>$Q$2),"",D9) で、AD列までフィルコピー 6)R2:AD11を選択し、下方向にフィルコピー
(マナ) 2019/03/09(土) 00:34
ごめんなさい。
急な所用の為、パソコンのない環境におります。
月曜日に改めてご報告いたします。
取り急ぎご連絡のみにて失礼いたします。
〉8)R〜AD列を「統合」機能で集計
初めまして知りました。
調べてみます。
遅くまで考えていただきまして感謝申し上げます。
(ぷりん) 2019/03/09(土) 06:45
Option Explicit
Sub test() Dim w(1 To 3, 1 To 12) As Long Dim j As Long, k As Long Dim 始 As Long Dim 終 As Long
始 = DateSerial(2019, 6, 29) 終 = DateSerial(2019, 7, 30)
For j = 2 To Cells(Rows.Count, 1).End(xlUp).Row Step 10 For k = 1 To 12 With Cells(j, k + 3) If .Value2 >= 始 Then If .Value2 <= 終 Then w(1, k) = w(1, k) + Cells(j + 3, k + 3).Value w(2, k) = w(2, k) + Cells(j + 6, k + 3).Value w(3, k) = w(3, k) + Cells(j + 7, k + 3).Value End If End If End With Next Next
With Worksheets.Add With .Cells(2) .Value = "4月" .AutoFill .Resize(, 12) End With Cells(2, 1).Resize(3).Value = [{"c";"f";"g"}] .Cells(2, 2).Resize(3, 12).Value = w End With
End Sub
(マナ) 2019/03/09(土) 15:15
かなりスピードアップしました。
マクロは秒速です!!
ただマクロ初めましてでして、少し様式が変更されたのですが
下記の修正だけで大丈夫でしょうか?
> For j = 2 To Cells(Rows.Count, 1).End(xlUp).Row Step 10
項目が10から14に増えました。
For j = 2 To Cells(Rows.Count, 1).End(xlUp).Row Step 14
>Cells(2, 1).Resize(3).Value = [{"c";"f";"g"}]
cとfとgを実際の項目名に変更する。
ご指導ください。
(ぷりん) 2019/03/11(月) 13:03
はい。それであっています。
>ただマクロ初めましてでして
その気があれば。簡単なことからでよいので、
チャレンジしてみてください。
(マナ) 2019/03/11(月) 18:11
遅くなりましたが無事に希望通りにできました。
勘違いをしておりまして項目cではなくdでありました。
>Cells(j + 3, k + 3).Value
ここがどうしてcになっているのか理解するのに時間を要してしまいました。
少しばかり頂いたコードがどういう動きをしているのか理解できた気がいたします。
ご親切にありがとうございました。
>その気があれば。簡単なことからでよいので、
>チャレンジしてみてください。
せっかくの機会ですのでチャレンジしてみようと思います。
また相談にのっていただければ幸いです。
ご指導感謝いたします。
(ぷりん) 2019/03/12(火) 17:25
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.