You have hit the brick wall that was always just around the corner - you are trying to get ancient 32bit technology to interact directly with modern 64bit technology. Unlikely that this will ever work properly, although there are apparently some work-arounds - see
[RESOLVED] Problem with VB Office and VB6 dlls-VBForums[
^]
Many years ago I had something similar working to get VB6 to interact with 64bit IBM-MQ using the principles I have re-found on this article -
Why Thunking Is Necessary - Windows drivers | Microsoft Docs[
^]
Another alternative is to ditch the Access database in favour of
SQL Server Express LocalDB - SQL Server | Microsoft Docs[
^] - there are MS articles on how to connect VB6 to SQL Server.
Having said all that, my advice is to ditch VB6 and rewrite your application in VB.NET.