Amigo revisando tu codigo el problema esta en esta linea
Código Delphi
[-]
inc(valor1[length(Valor1)]);
Aqui lo que estas haciendo es incrementando el valor ascii del ultimo caracter de Valor1...
Ejm:
Valor1='1' -> Al Aplicar
inc(valor1[length(Valor1)]) queda Valor1='2';
El problema es que al ser Valor1='9', aplicar
inc(valor1[length(Valor1)]) el siguiente valor de
Valor1=':';
Por lo tanto tu filtro cuando el rut comienza en 9 queda asi:
Rut >= '9' and Rut < ':'
Al comenzar con los otros digitos (1..8) no sucede esto.
Saludos cordiales
Desde Concepcion-Chile.