AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: База знаний и проекты
DAX
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 14.11.2006, 11:01   #1  
Gustav is offline
Gustav
Moderator
Аватар для Gustav
SAP
Лучший по профессии 2009
 
1,858 / 1152 (42) ++++++++
Регистрация: 24.01.2006
Адрес: Санкт-Петербург
Записей в блоге: 19
Цитата:
Сообщение от blokva Посмотреть сообщение
Я понимаю, что "Автофильтр - это Excel.Application" но почему тогда через ADODB я его получаю как таблицу? Более того, автофильтр однажды включенный создает эту коллизию и даже если я его потом выключаю, сиравно получаю лишнюю таблицу в ADODB... еслиб какое свойство этой псевдотаблицы получать и анализировать...
Эксперимент (Excel 2000, русский):
----------------------------------------------------------------
1. Создадим в Excel новую рабочую книгу.

2. В окне отладки (Ctrl+G) выполним команду:
? Thisworkbook.Names.Count
0
Т.е. коллекция имен (именованных диапазонов) у нас пустая

3. На первом листе создадим афтофильтр: в первой строке - заголовки колонок - Field1 и Field2 (соответственно в ячейки A1 и B1), в остальные строчки в ячейки A2:B10 введем какую-нибудь информацию для примера (допустим, числа от 1 до 9).

4. Стоя на любой ячейке диапазона, выполним команду меню: Данные / Фильтр / Автофильтр

5. В окне отладки (Ctrl+G) выполним команду:
? Thisworkbook.Names.Count
1
Т.е. в коллекции именованных диапазонов что-то появилось.

6. Что же это?
? Thisworkbook.Names(1).Name
Лист1!_FilterDatabase

? Thisworkbook.Names(1).RefersTo
=Лист1!$A$1:$B$10

7. Выключим автофильтр: Данные / Фильтр / Автофильтр

8. Повторим пункт 6 - всё то же самое.

Таким образом, применение автофильтра создает на рабочем листе именованный диапазон со скрытым служебным именем. ADO в Excel воспринимает как "таблицы схемы" и рабочие листы, и именованные диапазоны ("схема" - рабочая книга). Возможно, есть какой-то признак, позволяющий различать листы и диапазоны в контексте ADO, но мне он пока неизвестен...
За это сообщение автора поблагодарили: blokva (2).
Старый 14.11.2006, 12:07   #2  
blokva is offline
blokva
Пенсионер
Аватар для blokva
SAP
NavAx Club
 
743 / 167 (7) ++++++
Регистрация: 04.06.2003
Адрес: Беларусь
Цитата:
Сообщение от Gustav Посмотреть сообщение
Эксперимент (Excel 2000, русский):
......
Таким образом, применение автофильтра создает на рабочем листе именованный диапазон со скрытым служебным именем. ADO в Excel воспринимает как "таблицы схемы" и рабочие листы, и именованные диапазоны ("схема" - рабочая книга). Возможно, есть какой-то признак, позволяющий различать листы и диапазоны в контексте ADO, но мне он пока неизвестен...
Д я тоже в отладчике ёкселя смотрел создаются именованные диапазоны и в аксапте они и являются новыми листам (таблицами)...чтож будем искать варианты...
__________________
Законы природы еще никто не отменял!
А еще у меня растет 2 внучки!!! Кому интересно подробности тут:
http://www.baby-shine.com/
Теги
ado, download, excel, импорт, полезное, axapta

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
gl00mie: Read Excel table via ADO Blog bot DAX Blogs 2 09.04.2010 08:32
dynamicsusers: DL Tips And Tricks: ADO Database Reader (Jet way) - Excel Example Blog bot DAX Blogs 0 02.08.2007 03:50
casperkamal: Using ADO to read from Excel in Microsoft Dynamics Ax Blog bot DAX Blogs 2 14.05.2007 11:59

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 05:04.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.