hola franko1809
mira lo primero que te diria es que para comprobar si la busca ha encontrado resultados o no hagas lo siguiente:
'En si encuentra algo entrará en el IF sinó NO.
if not(rsCargo.EOF and rsCargo.BOF) then
end if
por otro lado, és lógico que salte el puntero del RecordSet ya que no hay ninuna coincidencia con GERENTES ya que los operadores que añades buscan coincidencias a partir de la cadena que has introducido, es decir gerent te podrá encontrar gerente, pero gerentes no te lo encontrará.
Quien iva a buscar gerentes cuando ya anteriormente me ha encontrado lo que buscaba? (gerente)
Lo que has de hacer para que no te pete al darle a MoveFirts, MoveLast, MoveNext, MoveForward es ponerle la condición que de he dicho del BOF y EOF así seguro que no te dará error
saludos, espero haberte ayudado.