I'm having a similar sort of problem, but I can't create a new post here in work.
I have a VBA macro which runs several Teradata SQL queries using an ODBC connection. However, the user is prompted to enter their login details for each query - I'd like them to enter them once at the outset and then each of the subsequent queries to use their credentials. I've created a procedure to establish a connection at the outset which seems to work fine, but I've tried various combinations of values for the QueryTables.Add(Connection...) string and continue to get the ODBC dialog box each time! I've checked the combinations of the strings mentioned above but can't seem to get the right combination of values so that everything is captured to create the single connection at the start and then reused for the subsequent queries without the user having to be prompted to choose or enter anything else.