Страница 1 из 1

Открытие Excel-таблиц(листов) с помощью ADO (ActiveX Data Object)

Добавлено: 24 дек 2007, 19:32
MDCI
Собственно нужно открыть таблицу Excel
При открытии соединения с базой данных происходит нормально.

CString xConnectionString;
xConnectionString=_T("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\"");
xConnectionString+=FileName;
xConnectionString+=CString(_T("\";Extended Properties=\"Excel 8.0;HDR=NO;\""));

m_pConnection->ConnectionString=xConnectionString;
m_pConnection->Open(m_pConnection->ConnectionString, _bstr_t(""), _bstr_t(""), adModeUnknown);

в нахождении существующих таблиц тоже не возникает проблем.
Но когда пытаюсь получить объект Recordset с данными таблицы, то возникает ошибка, код:


_tcscpy(_sql, _T("SELECT * FROM "));
_tcscat(_sql, TableName);
rst=m_pConnection->Execute(_sql, NULL, adCmdTable);

В этом случае выскакивает ошибка, что неверная комманда...
или так:
rst->Open(_sql, m_pConnection->ConnectionString, adOpenStatic, adLockOptimistic,adCmdTable);
тоже самое

rst->Open(TableName, m_pConnection->ConnectionString, adOpenStatic, adLockOptimistic,adCmdTable);
Тут же сообщает, что таблица не найдена...
Обычно выводит в конце знак $, убирал его, ноль внимания...
Уже не знаю что делать...

Re: Открытие Excel-таблиц(листов) с помощью ADO (ActiveX Data Object)

Добавлено: 25 дек 2007, 06:26
Vedrus
см. приват

Re: Открытие Excel-таблиц(листов) с помощью ADO (ActiveX Data Object)

Добавлено: 25 дек 2007, 10:15
Romeo
Vedrus, попрошу выложить решение проблемы сюда. Это может быть полезно пользователям, у которых подобная проблема возникнет в будущем.

Re: Открытие Excel-таблиц(листов) с помощью ADO (ActiveX Data Object)

Добавлено: 25 дек 2007, 20:52
MDCI
Vedrus писал(а):см. приват
хм... данное решение проблемы не подходит по известным причинам...
Если можешь намекни, чем можно решить эту проблему
Если нет, буду искать проблему в другом месте