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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 02.05.2010, 19:09   #2  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
А что есть "последняя ячека"? А если дипазон задан как "A2,D4" или, скажем, так - "Sheet1!A2:Sheet14,Sheet1!A2:Sheet14". То есть, как я понимаю, диапазон в Excel не обязан быть непрерывной областью, а может быть набором ячеек, разбросанных по листам документа. В этом случае понятие "крайности" ячейки становится слишком субъективным.

Отвечая на вопрос, диапазон - это Range. Его можно получить так:

X++:
xlApp = new COM("Excel.Application");
xlBooks = xlApp.workbooks();
xlBook = xlBooks.open(filename);
range = xlApp.Range(range)
Естественно, я не призываю работать на прямую с COM - используйте какую-нибудь объектную обертку над ним - ComExcelDocument_Ru, если не написали еще свою.

У range есть методы columns() и rows(), можно попробовать использовать их. Я же во исключение сюрпризов с хитрым Range предпочитаю работать с дипазоном поячеечно:

X++:
application.goto reference:=range
for each cell in range
  label = cell.address(false, false)
   ...
next
Таким образом можно перебрать все ячейки, входящие в дипазон, получить их адреса и затем уж исходя из своих критериев реить какая из них "крайняя".
За это сообщение автора поблагодарили: andrewK (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Исследование скорости экспорта данных из Axapta в Excel (коллективный эксперимент) Gustav DAX: База знаний и проекты 79 13.02.2014 13:18
Высота ячеек Excel eva DAX: Программирование 8 20.03.2012 22:42
emeadaxsupport: How does the Export to Excel feature work under the hood? Blog bot DAX Blogs 0 07.09.2009 19:05
[Excel] - Несколько версий Excel на машине клиента Андре DAX: Программирование 11 07.08.2007 13:45
Работа с Excel через COM и ошибка 0x800A03EC (Range.AutoFilter) gl00mie DAX: Программирование 15 30.03.2007 18:37

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 22:23.