No es muy difícil de hacer, pero sí un poco largo de explicar, por lo que te remito al ejemplo que tiene Neckkito para crear filtros múltiples: http://neckkito.xyz/nck/index.php/ejemplos/13-formularios/77-crear-un-filtro-multiple
Yo en tu caso, lo que haría es:
1º/ Un formulario sobre la tabla, directamente (lo haría sobre una consulta si solo te interesa una parte de los datos)
2º/ En ese formulario, en el encabezado o en el pie le pondría X cuadros combinados que cojan los datos de los distintos campos, por ejemplo, un cuadro combinado para las provincias que liste todas las provincias de tu tabla (sin repetirlas, claro), otro combinado para el sexo, otro para la nacionalidad...
3º/ Siguiendo el ejemplo indicado, construyes el filtro múltiple, de tal forma que si seleccionas Cuenca, te muestre todos los registros de Cuenca, pero si seleccionas Cuenca, Mujer, Australiana, te liste las mujeres australianas que viven en Cuenca...
Lo que tu planteas tampoco es complicado de hacer. Necesitas:
1º/ Un cuadro combinado (lo llamaré cboCampo) en el que escojas como tipo de origen de la fila "Lista de campos" y en origen de la fila, el nombre de la tabla/consulta que vas a usar (la misma sobre la que hagas el formulario)
2º/ Un segundo cuadro combinado (cboValor) en el que en el evento "al entrar" o "al recibir el enfoque" le pongas este código:
If Isnull(me.cboCampo) then
Msgbox "Tienes que seleccionar un campo primero",vbCritical,"ERROR"
Me.cboCampo.SetFocus
Exit Sub
End If
Me.cboValor.RowSource="SELECT DISTINCT [" & Me.cboValor & "] FROM TuTabla/Consulta ORDER BY [" & Me.cboValor & "]"
Me. CboValor. Requery
3º/ Un botón para filtrar con este código (lo podrías hacer también en el evento "después de actualizar del segundo combinado):
If IsNumeric(Me.cboValor) Then
Me.Filter= "[" & Me.cboCampo & "]=" & Me.cboValor
ElseIf IsDate (me.cboValor) Then
Me.Filter= "[" & Me.cboCampo & "]=#" & Me.cboValor & "#"
Else
Me.Filter= "[" & Me.cboCampo & "]='" & Me.cboValor & "'"
End If
Me.FilterOn=True
4º/ Un botón para volver a ver todos los registros:
Me.FilterOn=False
Lógicamente, con este sistema solo podrás filtrar por una condición, la que resulte de la combinación Campo-Valor elegida en los combos. Por eso veo más práctico el primer sistema. Pero para gustos, colores.