Кто-ниб. доступался к таблицам Excel через ODBC?
От: lexas Беларусь http://lexas.russia.webmatrixhosting.net
Дата: 15.01.02 11:08
Оценка:
В ОДБЦ-администраторе есть такой драйвер EXCEL. Так у меня он чё-то не предоставляет данных никаких...
Как им пользоваться?
Re: Кто-ниб. доступался к таблицам Excel через ODBC?
От: Toughpheeckouse Россия  
Дата: 15.01.02 11:15
Оценка:
Здравствуйте lexas, Вы писали:

L>В ОДБЦ-администраторе есть такой драйвер EXCEL. Так у меня он чё-то не предоставляет данных никаких...

L>Как им пользоваться?

Береш МСДН, в сёрче пишешь "ExcelAdo" (слитно), тебе вывалится (в моем мсдн первой строчкой):
"SAMPLE: ExcelADO Demonstrates How to Use ADO to Read and Write Data in Excel Workbooks"
ну и рабераешься.....
Думайте сами, решайте сами...
Re[2]: Кто-ниб. доступался к таблицам Excel через ODBC?
От: lexas Беларусь http://lexas.russia.webmatrixhosting.net
Дата: 15.01.02 12:56
Оценка:
Здравствуйте Toughpheeckouse, Вы писали:

T>Береш МСДН, в сёрче пишешь "ExcelAdo" (слитно), тебе вывалится (в моем мсдн первой строчкой):

T>"SAMPLE: ExcelADO Demonstrates How to Use ADO to Read and Write Data in Excel Workbooks"
T>ну и рабераешься..... :)

ТАК ВОТ! нифига не нашло. :down: У меня MSDN July 2000, может у тебя новее?
Re[3]: Кто-ниб. доступался к таблицам Excel через ODBC?
От: Toughpheeckouse Россия  
Дата: 15.01.02 13:02
Оценка: 1 (1)
Здравствуйте lexas, Вы писали:

L>Здравствуйте Toughpheeckouse, Вы писали:



L>ТАК ВОТ! нифига не нашло. У меня MSDN July 2000, может у тебя новее?


ага ноябрьский... ща на мыло кину статью... тока там про Бейсик... но в принципе какая разница....
тама *.exe1 переименую в *.exe
Думайте сами, решайте сами...
Re: Кто-ниб. доступался к таблицам Excel через ODBC?
От: Dima2  
Дата: 15.01.02 15:35
Оценка:
Здравствуйте lexas, Вы писали:

L>В ОДБЦ-администраторе есть такой драйвер EXCEL. Так у меня он чё-то не предоставляет данных никаких...

L>Как им пользоваться?

Что значит не предоставляет данных никаких.
Re[4]: Кто-ниб. доступался к таблицам Excel через ODBC?
От: lexas Беларусь http://lexas.russia.webmatrixhosting.net
Дата: 16.01.02 15:07
Оценка:
T>ага ноябрьский... ща на мыло кину статью... тока там про Бейсик... но в принципе какая разница....
T>тама *.exe1 переименую в *.exe
MERCI! Но вот беда — это ведь про ADO. А вот именно через ODBC как?
Re: Кто-ниб. доступался к таблицам Excel через ODBC?
От: Koumandin Россия  
Дата: 16.01.02 19:37
Оценка: 9 (2)
Здравствуйте lexas, Вы писали:

L>В ОДБЦ-администраторе есть такой драйвер EXCEL. Так у меня он чё-то не предоставляет данных никаких...

L>Как им пользоваться?

А вот что предлагают на www.sources.ru :

Создание файла Excel используя ODBC.
Автор: Alexander Mikula

Описание

Многие приложения, для сохранения отчётов или содержимого базы данных, используют функции для экспорта. Предлагаю Вашему вниманию очень простой метод сохранения результатов в Excel формате. ODBC предоставляет такую возможность. Единственный недостаток, это то, что на каждом компьютере, где будет запускаться Ваше приложение, должен быть установлен соответствующий драйвер ODBC. Но думаю, что это не проблемма, так как при установке Microsoft Office 97 этот драйвет устанавливается в систему по умолчанию.

Примечание вебмастера: пример настолько прост, что мне понадобилось всего 3 минуты, на то чтобы вставить кусок приводимой программы в Visual C++, откомпилировать и запустить готовую программку. Excel файл благополучно был создан Пример использует обычные SQL-запросы, поэтому каких либо трудностей тут не должно возникнуть ...

Что необходимо

Для того, чтобы всё заработало надо :

Добавить в проект #include <AFXDB.H>
проверить — установлен ли на компьютере ODBC-драйвер под названием "MICROSOFT EXCEL DRIVER (*.XLS)"
Собственно исходничек:

// пример создаёт Excel файл C:\DEMO.XLS, создаёт в нём таблицу с двумя
// колонками (текстовой и числовой) и добавляет в таблицу три строки.
//
void MyDemo::Put2Excel()
{
CDatabase database;
CString sDriver = "MICROSOFT EXCEL DRIVER (*.XLS)"; // название драйвера в ODBC-менеджере
CString sExcelFile = "c:\\demo.xls"; // имя и путь для создаваемого файла
CString sSql;

TRY
{
// Форматируем строку для доступа минуя DSN

sSql.Format("DRIVER={%s};DSN='';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s",
sDriver, sExcelFile, sExcelFile);

// Создаём базу данных (всмысле таблицу Excel)
if( database.OpenEx(sSql,CDatabase::noOdbcDialog) )
{
// Создаём структуру таблицы
sSql = "CREATE TABLE demo (Name TEXT,Age NUMBER)";
database.ExecuteSQL(sSql);

// вставляем данные
sSql = "INSERT INTO demo (Name,Age) VALUES ('Bruno Brutalinsky',45)";
database.ExecuteSQL(sSql);

sSql = "INSERT INTO demo (Name,Age) VALUES ('Fritz Pappenheimer',30)";
database.ExecuteSQL(sSql);

sSql = "INSERT INTO demo (Name,Age) VALUES ('Hella Wahnsinn',28)";
database.ExecuteSQL(sSql);
}

// Закрываем базу данных
database.Close();
}
CATCH_ALL(e)
{
TRACE1("Driver not installed: %s",sDriver);
}
END_CATCH_ALL;
}
Re[2]: Кто-ниб. доступался к таблицам Excel через ODBC?
От: lexas Беларусь http://lexas.russia.webmatrixhosting.net
Дата: 17.01.02 12:39
Оценка:
Здравствуйте Koumandin, Вы писали:



K>А вот что предлагают на www.sources.ru :


K>Создание файла Excel используя ODBC.

K>Автор: Alexander Mikula

Мужык, ты гений!!!! Всё работает!!!
Re[3]: Кто-ниб. доступался к таблицам Excel через ODBC?
От: ZAVRus Украина  
Дата: 18.10.05 09:51
Оценка:
Здравствуйте, lexas, Вы писали:

L>Здравствуйте Koumandin, Вы писали:




K>>А вот что предлагают на www.sources.ru :


K>>Создание файла Excel используя ODBC.

K>>Автор: Alexander Mikula

L>Мужык, ты гений!!!! Всё работает!!!


Всё класно да. Но можно ли как то повлиять на ширину столбцов? А так при открытии они все одного размера по умолчанию.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.