on your first recordset loop, you are checking for AnnoMin and AnnoMax.
on your loop you get to rs.EOF, but on the next loop of recordset you
forgot to reset again the recordset to the first record (rs.MoveFirst).
therefore, your code will immediately stop on the second loop since
rs.EOF is True.