![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
печать данных в Excel [D7, XP]
Анна © (2010-12-02 13:40:00)Добрый день!
Результаты работы ХП вываливаю в Excel. Столкнулась с проблемой, по мере того как переношу данные в Excel (присваиваю по строкам через одномерный вариантный массив) мне необходимо знать на какой строке заканчивается страница (пунктирная линия в Excel), чтобы на следующей странице, в зависимости от данных, вставить свою "шапку" для ЭТОЙ информации.
Последняя строка в Excel-е определяется как пустая :
showmessage('Последняя строка '+inttostr(XL.Cells.SpecialCells(xlCellTypeLastCell).Row));
А как мне, по мере заполнения по строкам Excel-я, перед началом следующей итерации определить что достигут конец страницы (пунктирная линия) ?
Надеюсь, что понятно написала.
Dennis I. Komarov (2010-12-02 15:44:00) [21]Может сразу прикинуть сколько, убрать пару строк для верности и разделить?
Вообще, почему для передачи инфы Excel понадобился, и чем обосновано условие [4]?
Анна (2010-12-02 15:39:00) [22]
> Dennis I. Komarov © (02.12.10 15:30) [8]
Не смогла я с этим вопросом разобраться... Так что буду делать путем подсчета высоты предыдущей строки (уже заполненной) и накапливать сумму, как только сумма будет близка к концу страницы, буду ставить разрыв.
Dennis I. Komarov (2010-12-02 15:30:00) [23]Уверены, что при различных настройках принтера (ов), они будут одинаковы? Хотя если заданы явно, то возможно да, но я так понимаю, что в данном случае разметка страницы явно не определяется...
Анна (2010-12-02 14:46:00) [24]
> 12 © (02.12.10 14:39) [6]
Это я уже делала, не получилось. Это уже по факту определяется кол-во разрывов (можно и самаому в любои месте поставить разрыв страницы...) Но мне надо не по факту, а по мере заполнения проанализировать, достигнут ли конец страницы... :((
12 (2010-12-02 14:39:00) [25]всмысле, погуглите на эту тему.
Sheet.HPageBreaks.Count - дает верное колво брейков, но далее по коллекции с пол-пинка достучаться не удалось
12 (2010-12-02 14:35:00) [26]Sheet.HPageBreaks.Count
Анна (2010-12-02 14:17:00) [27]Это все понятно... НО. мне надо на одном листе... Как проанализировать что достигнута пунктирная линия? (Поля в Excel заранее определены)
Dennis I. Komarov (2010-12-02 14:07:00) [28]Ну тогда делать разные книги (листы) соответствующие характеристикам данных, т.е. новая "шапка" - новый лист.
Анна (2010-12-02 13:54:00) [29]
> Dennis I. Komarov © (02.12.10 13:50) [1]
Для того чтобы в электронном виде послать заказчику.
"Повтор строк" (шапка) на каждом листе не подходит, т.к. на определнном этапе, в зависимости от данных - "шапка" - другая.
Dennis I. Komarov (2010-12-02 13:50:00) [30]
> Результаты работы ХП вываливаю в Excel.
Зачем? Только для того, чтобы вывести на принтер?
Ну если уж на то пошло, почему бы не сделать "шапку" средствами Excel? Если мне не изменяет склероз, то там вроде было что-то вроде - печатать на каждой странице...