Причина 5 (не распространяется на отличное объяснение Gord)
Ошибка пользователя. Например, попытка использовать драйвер ACE для чтения того, что он не предназначен для обработки (например, файла Excel), который был прочитайте с драйвером Jet ODBC в более ранней версии функции. Даже если сообщение неопределенно, оно правильно ломает ошибку в открытое время, а не после того, как вы считаете, что открытие было успешным. : /