Как сказал Рич Б в своем ответе, я не думаю, что можно стандартным способом ado.net подключиться к файлу Excel, который просто висит в памяти. Самый простой обходной путь, вероятно, состоит в том, чтобы на самом деле сохранить файл Excel на диск, подключиться к нему с помощью Jet Engine с помощью строки подключения, а затем, когда вы закончите выполнять все свои задачи, избавиться от файла. Это не может быть идеальным с точки зрения производительности, но ему не хватает той определенной WTFiness, которая заставила бы вас вырвать волосы.