Das kann ich Dir nicht sagen. Ich kenne Deinen Code nicht und der Fehler selbst scheint unscharf zu sein, es gibt scheinbar keine feste Größe für ein Maximum an geöffneten Tabellen in Access und es ist außerdem nicht klar, wann wie viele solcher Handles gebraucht werden.
Du musst den Fehler selbst lokalisieren, also >Debuggen, >Loggen oder sonst wie feststellen, wann er genau auftritt.
Wenn Dein Code an dieser unbekannten Grenze maximal geöffneter Tabellen Handles entlang schraddelt, ist es vielleicht nicht einfach, nur eine exakte (mehrfach reproduzierbare) Fehlerstelle zu isolieren. Es kann im Laufe verschiedener Bedienabfolgen an unterschiedlichen Stellen eintreten.
Ich bin auch kein Access Kenner, habs nur früher mal benutzt. Von daher kenne ich auch keine typischen Situationen.
Ich nenn mal ein Beispiel:
Du hast diverse Forms (mit Subforms), die Du alle der Reihe nach öffnest (immer tiefer in die Fallbearbeitung), jedes Öffnen verbraucht Tabellenhandles. Zuletzt startest Du den Code zum Drucken, wo weiterer Code läuft, der weitere Handles verbraucht. Irgendwann ist offenbar Schluss und es kommt der Fehler.
Denkbar wäre, dass ein Stück Code immer wieder in einer Schleife (Seriendruck, Felder befüllen) eine Variable mit neuen Handles "beschickt", (object.create / .open) ohne diese wieder frei zu geben. Ich weiß nicht, wie das in VBA gehandhabt wird.
Wenn das der Fall ist, wäre eine typische Situation, dass nach N Seriendokumenten der Fehler auftaucht. Wobei N schwanken kann.
Du kannst sicher verstehen, dass ich ohne Code oder weitere Anhaltspunkte noch mehr raten muss als Du.