Necesitas pasarle a la consulta los parámetros el año y mes a consultar, no solamente el mes porque te va mostrar todos los meses sin importar el año. Debes crear un formulario con 2 campos tipo combo de lista, uno para el año y otro para el mes más un botón para ver la consulta.
Supongamos que el formulario lo llamas frmConsulta
1. Combo del año llámalo cboPeriodo y origen de datos coloca lista de valores, este lo llenaremos al abrir el formulario mediante código.
2. Combo del mes llámalo cboMes y con el asistente elige lista de valores y escribe;
1;"Enero"; 2;"Febrero";3;"Marzo".............. 12;"Diciembre"
3. En el evento Al Abrir del formulario coloca el siguiente código:
Dim x As Integer
Fox x=2000 To 2050
Me.cboPeriodo.AddItem=x
Next x
No cierres el formulario lo necesitamos para modificar la consulta.
Supongamos que la consulta se llama qryTransportes:
Y que tiene el campo FechaTrans, incluye esta campo en la cuadricula de la consulta escribe Year([FechaTrans] )= y con el asistente Generar.... en criterios busca el formulario frmConsulta y elige el combo cboPeriodo, da clic en aceptar, ahora agrega AND Month([FechaTrans])= y repite Generar pero agrega el combo cboMes. Debe quedar en criterio algo como:
Year([FechaTrans])=Forms!frmConsulta!cboPeriodo AND Month([FechaTrans])= Forms!frmConsulta!cboMes
Con esto hacemos que la consulta dependa del formulario.
4. Estando el formulario en vista diseño arrastra la consulta qryTransportes hasta el formulario, esto crea un subformulario para ver el resultado de la consulta.
Supongamos que el objeto incrustado se llama subqryTransportes.
5. Crea un botón de comando por ejemplo, btnVer y le adicionas este código:
En el evento después de actualizar adiciona:
Me.subqryTransportes.Form.Requery
Con esto cada vez que cambies los datos de año y mes obtendrás los resultados.
Hay varias formas de obtener el resultado, ya sea mediante SQL o creando la consulta por VBA.