|
Подключение к защищенной книге Excel через ADO |
☑ |
0
Otvertka352
30.01.12
✎
15:48
|
Всем, добрый день!
Ищу способ подключения к защищенной книге Excel через ADO. Если кто может помочь, выложите пример кода.
|
|
1
ponaroshku
30.01.12
✎
16:48
|
ИмяФайлаЭксель = "D:\Export.xls"; // Имя создаваемого файла
// Собираем строку подключения
СтрокаПодключения = "
|Provider=Microsoft.Jet.OLEDB.4.0;
|Data Source="+ИмяФайлаЭксель+";
|Extended Properties=""Excel 8.0;HDR=No;"";";
// Создаем объект ADOX.Catalog
Catalog = Новый COMОбъект("ADOX.Catalog");
Catalog.ActiveConnection = СтрокаПодключения;
// Создаем таблицу и добавляем в неё два столбца
Table = Новый COMОбъект("ADOX.Table");
Table.Name = "Table";
Table.Columns.Append("Code");
Table.Columns.Append("Description");
// Присоединяем таблицу
Catalog.Tables.Append(Table);
Table = Неопределено;
Catalog = Неопределено;
// Создаем соединение
Connection = Новый COMОбъект("ADODB.Connection");
Connection.Open(СтрокаПодключения);
Command = Новый COMОбъект("ADODB.Command");
Command.ActiveConnection = Connection;
Command.CommandType = 1;
// Получаем номенклатуру для выгрузки
Запрос = Новый Запрос("
|ВЫБРАТЬ
| Номенклатура.Код,
| Номенклатура.Наименование
|ИЗ
| Справочник.Номенклатура КАК Номенклатура");
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
// Заполняем таблицу данными выборки
Пока Выборка.Следующий() Цикл
Command.CommandText = "
|INSERT INTO [Table] VALUES ('"+Выборка.Код+"','"+Выборка.Наименование+"')";
Command.Execute();
КонецЦикла;
// Закрываем соединение
Command = Неопределено;
Connection.Close();
Connection = Неопределено;
Все, готово !
|
|
2
Ковычки
30.01.12
✎
16:49
|
(1) что готово ?
|
|
3
ponaroshku
30.01.12
✎
16:50
|
(2) пример подключения) взято с соседнего ресурса:)
|
|
4
aleks-id
30.01.12
✎
16:51
|
(2)
- Все, готово, начальник!
- Что готово?
- Сломал все пять!
- Так я же тебе четыре давал!
- Да я образец тоже сломал!
|
|
5
ponaroshku
30.01.12
✎
16:52
|
(4) Все готово - это в соседнем ресурсе последняя строка
|
|
6
Otvertka352
30.01.12
✎
16:57
|
ponaroshku, спасибо за старание, но это не то что мне нужно. С незащищенной книгой, моя обработка давно умеет работать. У меня возникли трудности, с прочтением книги на которой установлена защита структуры.
|
|
7
Otvertka352
30.01.12
✎
18:48
|
UP
|
|
8
aleks-id
30.01.12
✎
18:49
|
пример защищенной книги в студию
|
|
9
Otvertka352
30.01.12
✎
18:52
|
Можешь создать новый Excel файл, в нем перейти на закладку "Рецензирование", и далее защитить книгу.
|
|
10
shuhard
30.01.12
✎
19:20
|
(6)
так что открывай xls через DAO
снимай пароль
читай ADODB
ставь пароль
|
|
11
Otvertka352
31.01.12
✎
14:13
|
shuhard, можешь показать пример кода? С DAO никогда не работал, вроде бы Microsoft советует использовать ADO, так как DAO устарел.
|
|
12
shuhard
31.01.12
✎
14:29
|
(11) в поиск
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший