I insert a row for each day of the month into my database using vb function to calculate days in a month then run from 0 to length of month -1
fills in say for December 12/1/2013 to 12/31/2013 then it adds 12/1/2013 again at the bottom with no data in the columns for this one extraneous entry. All of the correct entries get all columns filled.
just for fun I went to length of month -2 then I get 12/1/2013 to 12/30/2013 and an extra 12/1/2013 at the bottom.
so if I do an update on the first 31 rows for December I get a second row with 12/1/2013 at the bottom. something has to be telling it to write the strange rows.