[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『時間帯ごとに重複なしのカウントがしたい』(まるも)
現在、マクロを使い集計ツールを作成しています。
マクロは勉強中でネットを参考にしてプログラムを組んでいる程度のレベルです。
やりたいこと→10時〜17時の中で時間毎(30分や60分など)に何件(重複なしの)データが存在するかを知りたいです。
まずは、対象のデータが開始時間と終了時間の間にあるかを見て、Dictionary関数を使い、重複確認をしているのですが、上手くいきません。
※開始時間と終了時間は対象のデータによって変動があります。
●現在のデータ
B列とC列に何時〜何時までの時間が入っており、
B列 C列
2020/1/1 10:00 2020/1/1 10:30
2020/1/1 10:30 2020/1/1 11:00
・
・
・
2020/1/1 16:30 2020/1/1 17:00
F列とG列に対象のデータが入っています。
F列 G列
2020/1/1 10:00 1
2020/1/1 10:01 3
2020/1/1 10:03 2
2020/1/1 10:05 1
・
・
・
2020/1/1 16:58 2
2020/1/1 16:59 1
D列に重複なしのデータのカウント数を知りたい場合はどのようにすればいいでしょか?
B列 C列 D列
2020/1/1 10:00 2020/1/1 10:30 3(1,2,3なので)
2020/1/1 10:30 2020/1/1 11:00 2
よろしくお願いいたします。
< 使用 Excel:Excel2013、使用 OS:Windows7 >
http://officetanaka.net/excel/vba/tips/tips80.htm (tkit) 2020/05/15(金) 16:44
Dim dic As Object, c As Range, cc As Range For Each cc In Range("B:B").SpecialCells(2) Set dic = CreateObject("Scripting.Dictionary") If IsDate(cc.Value) And IsDate(cc.Offset(, 1).Value) Then For Each c In Range("F:F").SpecialCells(2) If IsDate(c.Value) Then If c.Value >= cc.Value And c.Value < cc.Offset(, 1).Value Then dic(c.Offset(, 1).Value) = True End If End If Next c End If cc.Offset(, 2).Value = dic.Count Next cc End Sub (mm) 2020/05/15(金) 16:47
(まるも) 2020/05/15(金) 18:40
日付が違うデータを同様に集計したい場合は、どの様に処理を書いていけばいいでしょうか?
日付ごとにD列、E列、F列の様に集計したいです。
データ(前回からの変更点⇒データは違うシートのB列に移動させました)
2020/1/1 10:00 1
2020/1/1 10:00 2
・
・
・
2020/1/1 17:00 1
2020/1/2 10:00 1
2020/1/2 10:00 2
・
・
・
2020/1/2 17:00 3
2020/1/5 10:00 1
2020/1/5 10:00 2
・
・
・
2020/1/5 17:00 2
集計結果
D列 E列 F列
2020/1/1の結果 2020/1/2の結果 2020/1/5の結果
どなたかご教授いただければ幸いです。
(まるも) 2020/05/19(火) 11:17
参考HPです。
https://excelfactory.net/excelboard/excelvba/excel.cgi?mode=all&namber=191979&rev=0
http://www.vbalab.sakura.ne.jp/vbaqa/c-board.cgi?cmd=ntr;tree=81290;id=excel
(通りすがり) 2020/05/19(火) 11:28
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.