Hi there,
Maybe I'm glossing over something, but I don't see anything to go kathunk. Are you sure it's not erring someplace in 'InsertRow()'?
Again, maybe I'm just not awake yet, but presuming that Col B has dates and "ReportMonth" refers to a one-cell range, could you shorten the above to:
MyRows = Range("Date").Cells.SpecialCells(xlCellTypeBlanks).Count
If MyRows <= 3 Then
Call InsertRow
Application.CutCopyMode = False
End If
Range("ReportMonth").Value = Application.Max([B:B])
If you post back with a small example wb, I'd probably get a chance to test later (at work w/2003; I'm signing off, but currently in 2000, so didn't test)
Mark