Sei que esta pergunta foi respondida, mas depois de passar semanas tirando o meu cabelo com erros de conexão ODBC intermitentes semelhantes com os aplicativos do Access, pensei em adicionar algo aqui.
Uma coisa a verificar é a configuração do DNS nas estações de trabalho. No meu caso, as estações de trabalho foram configuradas para usar o DNS do provedor de Internet, o que significava que, quando a estação de trabalho tentava procurar o SQL Server pelo nome, não o encontrava, já que o provedor da Internet não tinha um Entrada de DNS para o SQL Server do meu cliente. Quando as estações de trabalho foram alteradas para usar o controlador de domínio (este era um pequeno escritório de servidor único com o SBS) como DNS primário, tudo funcionou bem a partir de então.
Eu nunca consegui descobrir por que o problema era intermitente, embora (o NETBIOS sobre TCP / IP estivesse desativado, portanto não poderia ter sido a resolução de transmissão).