Ох запарился. RecNo с единицы начинается так что вы абсолютно верно подметили. Не нужно там -1!!!
С утра кофе надо пить побольше! Так как random может выдать 0, то самым правильным будет решение
Код:
form3.ADOTable1.RecNo:= Random(form3.ADOTable1.RecordCount-1)+1;