Entonces tenemos que ponernos duros
Si has comprobado que te guarda correctamente las fechas en la base de datos, tienes dos opciones: la primera es comprobar con otro programa fuera de VB que una consulta similar a la que quieres ejecutar funciona (desde el generador de consultas de Access, MySQLAdmin, o según el motor de bases de datos que uses). No vamos a descartar que se pueda tratar de un bug, pero para estar seguros, primero hay que saber dónde falla exactamente.
La segunda, es ver qué está concatenando VB. Para ello, sustituye el código que pusiste en el foro:
Código:
If Rs.State = 1 Then Rs.Close
Rs.Open "SELECT * FROM Ppagos WHERE NOMBRE = '" & .TxtActualizarNombre.Text & "' ORDER BY FECHA ASC", cnn, adOpenStatic, adLockOptimistic
Rs.Requery
Call .FlexGridCargar(.GrillaDiezmos)
Por este otro (no modifica nada, sólo agrega dos líneas):
Código:
If Rs.State = 1 Then Rs.Close
Debug.Print "SELECT * FROM Ppagos WHERE NOMBRE = '" & .TxtActualizarNombre.Text & "' ORDER BY FECHA ASC"
Debug.Assert False
Rs.Open "SELECT * FROM Ppagos WHERE NOMBRE = '" & .TxtActualizarNombre.Text & "' ORDER BY FECHA ASC", cnn, adOpenStatic, adLockOptimistic
Rs.Requery
Call .FlexGridCargar(.GrillaDiezmos)
Cuando lo ejecutes, el programa se detendrá en la línea que pone "Debug.Assert False", y en la ventana Inmediato (Ctrl+G, si no sale debajo del código), te saldrá la instrucción SELECT concatenada que le estás mandando al recordset. Comprueba ahí si la Select es correcta, e incluso copia esa línea y mándanosla aquí para que la podamos analizar entre todos, si no ves antes el problema.
Más aún, intenta ejecutar esa línea tal y como te decía en la opción 1, y si es incorrecta por cualquier causa, es fácil que el error que te de sea más descriptivo que cualquier cosa que diga VB.