I am writing some code to go through a recordset and I want something that will stop at the last record and disable the next button. When I use: If .eof then disable, it makes the user hit it twice. I am wanting to try to use something on the lines that if the .AbsolutePosition equals the .RecordCount then disable it. However, AbsolutePosition is not returning values it should. It is always -1 or -3, as opposed to which record its on. I am using ADO to a SQL 7.0 server. How can I do it? Code example please.