El presente de subjuntivo se puede referir tanto al presente como al futuro. Se utiliza en oraciones subordinadas después de ciertas expresiones para manifestar probablidad o diversos sentimientos, como sorpresa, asombro, agrado, alegría, etc.
No se trata de la formalidad sino mas bien de la concordancia.«Venga» es subjuntivo presente.«Viniera» es subjuntivo pasado.Como la oración está en tiempo pasado, lo correcto sería usar «viniera».-> Juan me dijo que viniera.Si la oración estuviera en presente, entonces ...