Hello Ozgrid!

How are you all today?

So we have this rows of data that we are extracting from a system and equally distributing to a team of 8 to work on for the day. The number of rows varies each day as well as the sequence of who takes the first set, second set, third set of data and so on. I also have to take into consideration the off days of the team members and if someone is to call-in sick.

The process goes like this. [TABLE="border: 1, cellpadding: 1, cellspacing: 0"]

[TD="width: 64"]**Day1**[/TD]

[TD="width: 64"]**Day2**[/TD]

[TD="width: 64"]**Day3**[/TD]

[TD="width: 64"]**Day4**[/TD]

[TD="width: 64"]**Day5**[/TD]

Member1

[/td]Member8

[/td]Member7

[/td]Member6

[/td]Member5

[/td]Member2

[/td]Member1

[/td]Member8 ( off day )

[/td]Member7

[/td]Member6

[/td]Member3

[/td]Member2

[/td]Member1

[/td]Member8

[/td]Member7

[/td]Member4

[/td]Member3

[/td]Member2

[/td]Member1

[/td]Member8

[/td]Member5

[/td]Member4

[/td]Member3

[/td]Member2

[/td]Member1

[/td]Member6

[/td]Member5

[/td]Member4

[/td]Member3

[/td]Member2

[/td]Member7

[/td]Member6

[/td]Member5

[/td]Member4

[/td]Member3

[/td]Member8

[/td]Member7

[/td]Member6

[/td]Member5

[/td]Member4

[/td]

[/TABLE]

Day1 = 1000 rows of data *(excluding header)* → (1000 - (1000 Mod / 8 = **125 each**

Member1 gets the first 1st to 125th row, Member2 gets 126th to 250th row ........... Member 8th gets the last set of data that is 876th to 1000th.

Day2 = 800 rows of data *(excluding header)* → (800 - (800 Mod / 8 = **100 each**

Now Member8 gets the first set, Member1 gets the second set ......... Member7 gets the last set.

Day3 = 1200 rows of data *(excluding header)* → (1200 - (1200 Mod 7) / 7 = **171 each** and the remaining 3 will be added to the last set. So Member6 gets a total of 174.

Member 7 gets the first set, Member1 gets the 2nd set *( since Member8 is not working this day ) *.......... Member6 gets the last set.

and the cycle goes on ( as shown in the table above ). Basically, the set of data is being rotated each day.

Any idea how to implement the above in simple but efficient and bulletproof way?

I'm thinking of a UserForm of Checkboxes with the names of each member. Checkbox of the respective member will be ticked if it's their working day by default. From there, the program will count the how many members are present and will divide the data accordingly. I know I said simple but the checkbox idea came to mind because of the OpenFile dialog that will prompt the user for the raw data that's extracted from the system which will then remove unnecessary data columns and row before distributing it to the team. That being said, I'm having trouble thinking of a way to implement the idea. Any help and suggestion will be much appreciated.

PS: I hope what I said above makes sense

[ATTACH=JSON]{"alt":"Click image for larger version Name:\tCapture.PNG Views:\t1 Size:\t15.0 KB ID:\t1200703","data-align":"none","data-attachmentid":"1200703","data-size":"full","title":"Sample Form"}[/ATTACH]