Dal punto di vista LOGICO mi piacerebbe capire perchè compari come primo TERMINE l'oggetto ESTERNO e non quello INTERNO... è veramente ILLOGICO.
Seconda cosa non si usa la proprietà TEXT in vba... se non in particolari casi, ma in ogni modo MAI nelle Queries.
Nelle Tabelle poi si separa con il PUNTO e non Esclamativo...!
SELECT Matricola, Descrizione, Data_assegnazione, Classifica
FROM Inventario
WHERE [Descrizione]=[Forms]![msc_ricerca]![desc];
Suggerisco un buon Libro.