La casella di testo è giusto che non rappresenti una data. Lì dentro ci va solo un "valore digitato". Il giochetto/trucchetto sta nella query con l'aggiunta della colonna Year([NomeCampoData]) che estrae solo l'Anno dal TUO CAMPO DATA (come si chiama?).
Non so se sia pertinente o no...a me sembra di sì. In questa discussione
dovrebbe esserci uno scenario (più complesso) simile al tuo, ma se leggi il suggerimento di @Alex che mira ad ottimizzare la tua casella di testo (con un abile codice VBA che sfrutta Filter ecc...io non ci ho capito molto). In questo modo filtri automaticamente la tua maschera ed eviti di scomodare una query.
Spero di non aver fatto confusione e...se magari @Alex si affaccia e dice la sua in merito...potrebbe chiarire meglio tutto.