Olá,
Já tive bancos de dados Access rodando com cerca de 100MB numa rede de 40 máquinas sem problemas. Verifique o seguinte:
1. NÃO use controle acoplados, com objetos datacontrol ou o equivalende ado;
2. USE regras de integridade referencial entre tabelas, ou seja, prefira o uso de relacionamentos entre tabelas do q ue controlar tudo pelo seu código, em especial, use as opções deletar em cascata e atualizar em cascata, pois nos casos de tabelas pai e filhas, ao excluir ou atualizar a tabela pai, os registros filhos são excluídos ou atualizados conforme o caso. Ao contrário do que muitos pensam as regras de integridade são mais eficientes e seguras do que controlar tudo pelo código. Isso vale também para bancos de dados cliente-servidor como SQL Server ou Oracle;
3. SEMPRE use transações para proteger as suas inserções ou atualizações, e de tempos em tempos, nos loops muito longos use a instrução DoEvents que dá uma "pausa" para o motor do banco de dados "respirar" e atualizar a base de dados adequadamente. Se estiver usando DAO, use também a instrução Idle da workspace para permitir uma pausa até que o serviço seja concluído, mevitando sobrecarregar o motor de banco de dados;
4. EVITE ao máximo o uso de campos autonumeração. Eles são muitos frágeis em ambientes de grande movimentação de dados. Eventualmente o Access gera o mesmo número para dois ou mais registros e aí, numa operação de edição ou exclusão, outros registros podem se perder. Isto acontece inclusive com bancos de dados mais "parrudos" como SQL Server, MySQL, Oracle, etc, embora seja muito, muito menos frequente.
Espero ter ajudado em alguma coisa.
Sandro.