Запрос к Excel при помощи ADODB - как не указывать имя листа?
☑
0
arsik
гуру
15.11.18
✎
09:01
Например запрос:
"SELECT TOP 2 F2 FROM [" + ИмяЛиста + "$]";
можно делать без указания имени листа? Я всегда знаю, что это первый лист. Может какой то идентификатор есть?
1
ДенисЧ
15.11.18
✎
09:03
Worksheets(1).name
2
arsik
гуру
15.11.18
✎
09:09
(1) Нет никакого Worksheets - я через адодб подключаюсь. Как раз меняю схему, т.к. работа через КОМ с экселем медленная.
3
ДенисЧ
15.11.18
✎
09:11
4
Мимохожий Однако
15.11.18
✎
09:15
Стандартное чтение табличного документа не подходит?
5
НЕА123
15.11.18
✎
09:16
6
Кирпич
15.11.18
✎
09:20
(0) Ну укажи там номер
SELECT TOP 2 F2 FROM [1]
7
shuhard
15.11.18
✎
09:29
(5) +1
ADOX
8
arsik
гуру
15.11.18
✎
10:00
(6) нет. Так не работает.
(3) Спасибо сделал по примеру.
Функция ПолучитьИмяПервогоЛиста()
Попытка
адодбТаблицы = адодбСоединение.OpenSchema(20);
ИмяЛиста = адодбТаблицы.Fields("TABLE_NAME").Value;
адодбТаблицы.Close();
Возврат ИмяЛиста;
Исключение
Возврат "";
КонецПопытки;
КонецФункции
(5) (7) Зачем лишние сущности добавлять.
9
Мыш
15.11.18
✎
10:20
(0) АдоДБ обязательно? Раз уж меняешь схему - можно и другие варианты рассмотреть.
10
arsik
гуру
15.11.18
✎
10:31
(9) А других нету. Платформа 8.2 - напрямую с экселем работать не может.
11
shuhard
15.11.18
✎
15:08
(8)[Зачем лишние сущности добавлять.]
есть скрытые листы и много чего ещё
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший