Das schreit bei mir förmlich nach Views. Wenn das nicht "erlaubt" ist, könnte man die Basis-Abfragen auch als "with" ins
SQL aufnehmen, falls
Access das kennt.
Du brauchst aus der einen Tabelle Max und Min. Warum sollte man das jedesmal berechnen?
Die Grundabfragen (where-Bedingungen) sind in ihrer Basis auch immer gleich. Nur die ArtNr wird verändert.
Es stellt sich höchstens noch die Frage, ob die zwei Views (jede der gejointen Tabellen bekommt eine eigene View) oder drei (zusätzlich die Ergebnis-View). Eventuell reicht es nur die Ergebnis-View zu erstellen.