Assuming your data is normalized, and you don't have some silly setup with
31 fields in a table, then I would suggest you do the following:
Prompt user for month/year to edit.
Execute code to de-normalize the data into a temp table with "name" field,
and 31 fields. You then of course bind the form to this temp table.
This would allow you to scroll, and have 5, or 500 names for one month.
You could also add some arrow key code to the continuous form so the up/down
arrow keys work (just like they do in a datasheet).
when the user is done, you re-normalize the data, and write it back to the
data table. (this likely means that right before you write back the data,
you DELETE the existing data, as makes coordination of what was changed very
easy.
Using the above approach, not a lot code need be written at all, and you
could thus use a standard continuous form....
The only serious issue with the above is the use of temp tables, and issues
of bloat. However, these issues should be able to be dealt with, and this
type of design compromise seems reasonable.
And, if you did use a FlexGrid, you would have to do the above anyway, since
with a FlexGrid, you would have to write the code to fill the grid, and
write it back after anyway....
The above idea of using a continues form is going to be WAY WAY less work,
and likely work better anyway...