
No.2ベストアンサー
- 回答日時:
表の作り方や、案件の登録方法によって、
マクロの記述内容は変わると思います。
とりあえず、下記のコードの場合、
1つの案件でしたらグループ分けできます。
力不足でコードは決して簡単には作れませんでしたが、
ご参考までに。
↓↓
Sub GroupDevision()
Dim i As Long, cnt As Long, maxRow As Long
Dim minDay As Date, maxDay As Date
Dim Data() As Variant
' 最終行を取得します
maxRow = Cells(Rows.Count, 1).End(xlUp).Row
' グループ分けデータを格納する配列を定義します
ReDim Data(1 To maxRow - 1, 1 To 1)
' 一番古い日付を設定します
minDay = Cells(2, 1).Value
' 最終行までデータを繰り返し処理します
For i = 2 To maxRow
' 開始日から15日以上離れている場合
If Cells(i, 1) >= minDay + 15 Then
cnt = cnt + 1
' グループ分けの中で一番新しい日付を設定します
maxDay = Cells(i - 1, 1)
' グループ分けデータに格納します
Data(cnt, 1) = Format(minDay, "m/d") & "-" & Format(maxDay, "m/d")
' 次のグループの中で、一番古い日付を設定します
minDay = Cells(i, 1)
' もし最終行の場合
If i = maxRow Then
cnt = cnt + 1
' グループ分けデータに格納します
Data(cnt, 1) = Format(minDay, "m/d") & "-" & Format(minDay, "m/d")
End If
End If
Next
' グループ分けデータをB列に貼り付けます
Range(Cells(2, 2), Cells(2 + cnt, 2)) = Data
End Sub

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Outlookのアドレス帳のグループ...
-
グループごとの人数のカウント
-
グループごとの人数のカウント
-
パート始めてから、欠勤の連絡...
-
Beckyでアドレス帳のグループへ...
-
googleグループに招待されまし...
-
thunderbirdのアドレス帳移設
-
スマホはアンドロイドです。SMS...
-
EXCEL/グループ数を数え...
-
LINEの既読数がおかしいです(´...
-
VBA 図形グループ化後オブジェ...
-
LINEの学生グループに不登校な...
-
Googleからの以下のメールにつ...
-
重複しないグループ分けについて
-
IP Messengerでグループ名を作...
-
CCのまま返信したい
-
エクセルのスクロールバーが二...
-
あやまって【Ctrl+D】を押して...
-
Thunderbird メール下書き保存...
-
下書きメールの添付
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
グループごとの人数のカウント
-
グループごとの人数のカウント
-
Outlookのアドレス帳のグループ...
-
LINEの既読数がおかしいです(´...
-
パート始めてから、欠勤の連絡...
-
重複しないグループ分けについて
-
Beckyでアドレス帳のグループへ...
-
Googleからの以下のメールにつ...
-
町内会回覧板が戻って来ない・・・
-
IP Messengerでグループ名を作...
-
スマホはアンドロイドです。SMS...
-
小学校の運動会の短距離走、走...
-
googleグループに招待されまし...
-
EXCELで連続した同じ値をグルー...
-
エクセル:グループ機能について
-
EXCEL/グループ数を数え...
-
VBA 図形グループ化後オブジェ...
-
Excelで指定した条件で時間を自...
-
MacのアドレスブックをiTunesを...
-
エクセルでのソート
おすすめ情報