John's quite right about this, assuming that your query really is one that's supposed to be taking that long. (Otherwise you might look for a problem with your query.)
In addition, if you have a recent version of my code (which might possibly not be on-line yet), I have a way to set a default for that for all such commands. Instead of going to the ADOCommand object to set the CommandTimeout property, look for the same property name on the ADOConnect (connection) object, normally 'ADODB'. If you set it there once then it will automatically be applied to all ADOCommand objects that are created on that connection.