• For the first problem.

    Creating 'linked' tables should work. The procedures might be more efficient since the SQL server engine is more powerful. However, you do introduce network overhead, so this might reduce the gain.

    Another problem might arise if you are using complex, updatable queries in Access. Some threads have been around that report problems with those.

    For the second part, you could create a DTS task that checks for the file and if it finds it, does the necessary handling through a bulk insert task.