|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
26.02.2009, 03:57 | #1 |
Пользователь
Регистрация: 26.02.2009
Сообщений: 24
|
как узнать последнюю строку и последний столбец в xls таблице?
Здравствуйте.
Скажите пожалуйста, как узнать последнюю строку и последний столбец в xls таблице? Т.е. строку и столбец, за которыми однозначно нет никаких данных. И ещё вопрос: как узнать, является ли ячейка объеденённой и какие ячейки объеденены? Спасибо.
Может быть когда-нибудь я кому-нибудь в чём-нибудь и помогу...
|
26.02.2009, 04:26 | #2 |
Пользователь
Регистрация: 23.07.2008
Сообщений: 69
|
Ну вот быстрый ответ на то как узнать последний столбец/строку:
Просто проверять в цикле пустоты, скажем так нашли строку, за ней проверяем есть ли что то в ячейках, а если ситуация такая что могут встретится пустые строки (разрывы), то и проверить скажем еще 100 строк на пустоту, со столбцами так же..
I like beer.. more beer..
|
26.02.2009, 08:15 | #3 |
Участник клуба
Регистрация: 11.01.2009
Сообщений: 1,917
|
Пробуй так ...
Код:
X, Y : Integer; WorkBk : _WorkBook; WorkSheet : _WorkSheet; P.S. Это все актуально если пользоваться компонентом TExcelApplication из палитры Servers
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Последний раз редактировалось Kotofff; 26.02.2009 в 08:17. |
26.02.2009, 08:42 | #4 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
Можно и без активации последней ячейки:
Код:
Цитата:
Если значение этого свойства больше 1, значит, ячейка объединённая. На Delphi написать пример не могу, но на VBA будет так: Код:
|
|
26.02.2009, 14:34 | #5 | |
Пользователь
Регистрация: 26.02.2009
Сообщений: 24
|
Цитата:
Но у этого метода есть один недостаток: Допустим если в таблице заполнены ячейки А1:В5, а ячейка С10 без данных, но имеет форматирование, то этот метод найдёт именно ячейку С10.
Может быть когда-нибудь я кому-нибудь в чём-нибудь и помогу...
|
|
26.02.2009, 15:12 | #6 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
Цитата:
Во-первых, если в таблице заполненные строки идут подряд, можно попробовать получить адрес заполненного диапазона так: Код:
(если 3-я строка, к примеру, пустая, данный метод даст неверный ответ) Корректно определить последнюю строку и столбец можно только так: (пример опять на VBA, но перевести его, думаю, проблем не составит) Код:
__Полезные надстройки для Excel. Парсинг сайтов и файлов.
Макросы любой сложности на заказ. Мониторинг цен конкурентов Последний раз редактировалось EducatedFool; 26.02.2009 в 15:32. |
|
08.10.2009, 12:04 | #7 | |
Пользователь
Регистрация: 11.07.2008
Сообщений: 17
|
Цитата:
Может кто-нибудь знает как быть?
Краткость - сестра таланта.
Л.Н.Толстой
|
|
06.12.2010, 12:58 | #8 |
Новичок
Джуниор
Регистрация: 15.10.2010
Сообщений: 1
|
k = .Cells(1, .Columns.Count).End(xlToLeft).Colum n
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как игнорироть последний символ переход на новую строку | Rustik2 | Общие вопросы C/C++ | 11 | 08.11.2009 23:09 |
Как найти последнюю строку Листа? | Stilet | Microsoft Office Excel | 6 | 13.10.2009 14:33 |
Как закрепить верхюю строку или левый столбец | MiroslavHerhardt | Microsoft Office Excel | 3 | 16.08.2009 14:09 |
Как найти последнюю запись в таблице? | dsapa | Microsoft Office Excel | 2 | 21.07.2009 16:37 |
Удалить последнюю строку из файла | Flame_of_Death | Помощь студентам | 6 | 21.07.2009 13:48 |