Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.02.27;
Скачать: CL | DM;

Вниз

печать данных в Excel   Найти похожие ветки 

 
Анна   (2010-12-02 13:40) [0]

Добрый день!
Результаты работы ХП вываливаю в Excel. Столкнулась с проблемой, по мере того как переношу данные в Excel (присваиваю по строкам через одномерный вариантный массив) мне необходимо знать на какой строке заканчивается страница (пунктирная линия в Excel), чтобы на следующей странице, в зависимости от данных, вставить свою "шапку" для ЭТОЙ информации.
Последняя строка в Excel-е определяется как  пустая :
showmessage("Последняя строка  "+inttostr(XL.Cells.SpecialCells(xlCellTypeLastCell).Row));
А как мне, по мере заполнения по строкам Excel-я, перед началом следующей итерации определить что достигут конец страницы (пунктирная линия) ?
Надеюсь, что понятно написала.


 
Dennis I. Komarov ©   (2010-12-02 13:50) [1]


> Результаты работы ХП вываливаю в Excel.

Зачем? Только для того, чтобы вывести на принтер?
Ну если уж на то пошло, почему бы не сделать "шапку" средствами Excel? Если мне не изменяет склероз, то там вроде было что-то вроде - печатать на каждой странице...


 
Анна   (2010-12-02 13:54) [2]


> Dennis I. Komarov ©   (02.12.10 13:50) [1]

Для того чтобы в электронном виде послать заказчику.
"Повтор строк" (шапка) на каждом листе не подходит, т.к. на определнном этапе, в зависимости от данных - "шапка" - другая.


 
Dennis I. Komarov ©   (2010-12-02 14:07) [3]

Ну тогда делать разные книги (листы) соответствующие характеристикам данных, т.е. новая "шапка" - новый лист.


 
Анна   (2010-12-02 14:17) [4]

Это все понятно... НО. мне надо на одном листе... Как проанализировать что достигнута пунктирная линия? (Поля в Excel заранее определены)


 
12 ©   (2010-12-02 14:35) [5]

Sheet.HPageBreaks.Count


 
12 ©   (2010-12-02 14:39) [6]

всмысле, погуглите на эту тему.
Sheet.HPageBreaks.Count - дает верное колво брейков, но далее по коллекции с пол-пинка достучаться не удалось


 
Анна   (2010-12-02 14:46) [7]


> 12 ©   (02.12.10 14:39) [6]

Это я уже делала, не получилось. Это уже по факту определяется кол-во разрывов (можно и самаому в любои месте поставить разрыв страницы...) Но мне надо не по факту, а по мере заполнения проанализировать, достигнут ли конец страницы...  :((


 
Dennis I. Komarov ©   (2010-12-02 15:30) [8]

Уверены, что при различных настройках принтера (ов), они будут одинаковы? Хотя если заданы явно, то возможно да, но я так понимаю, что в данном случае разметка страницы явно не определяется...


 
Анна   (2010-12-02 15:39) [9]


> Dennis I. Komarov ©   (02.12.10 15:30) [8]

Не смогла я с этим вопросом разобраться... Так что буду делать путем подсчета высоты предыдущей строки (уже заполненной) и накапливать сумму, как только сумма будет близка к концу страницы, буду ставить разрыв.


 
Dennis I. Komarov ©   (2010-12-02 15:44) [10]

Может сразу прикинуть сколько, убрать пару строк для верности и разделить?
Вообще, почему для передачи инфы Excel понадобился, и чем обосновано условие [4]?


 
Анна   (2010-12-02 15:50) [11]


> Dennis I. Komarov ©   (02.12.10 15:44) [10]

Кол-во строк тоже не подходит, т.к. при заполнении если не вмещается в ячейку - то перенос, и соотв. ячейка раздвигается  в высоту.
Конечно было бы проще сдалать на разных листах и автоматом,средствами Excel-я повторять шапку, но заказчиков много и как правило не  разбираются в Excel-е и есть вероятнось, что не переключатся на другой лист и не увидят данных...


 
Dennis I. Komarov ©   (2010-12-02 16:00) [12]


> Анна   (02.12.10 15:50) [11]

Тогда зачем Excel? А вдруг его вообще нет?

А от того, что Вы будите пытаться сделать за них их же работу (это я про размерку страниц)... ничего хорошего не получиться. А кому-то надо не A4, кому-то не видно, шрифт больно мелкий, кому-то альбом понадобился... и т.д. И Как?


 
Анна   (2010-12-02 16:12) [13]

У меня форма из приказа, от которой отступиться нельзя. И шрифт, и лист книжный, и поля - все задано и нельзя нарушать... И заказчики не будут ее распечатывать, они получат готовый файл и отчитаются в электронном виде перед вышестоящей организацией.  
Спасибо за участие.


 
12 ©   (2010-12-02 16:16) [14]


> И Как?

это не ответ Dennisу, это вообще, как у нас например было
Элементарно.
В шаблоне фиксируется шапка, файл-шаблон с программой идет.


 
Анна   (2010-12-02 16:23) [15]


> 12 ©   (02.12.10 16:16) [14]

В том то и дело, что это элементарно. Но у меня, в зависимости от НД, на первых 2 страницах, например, будет одна шапка. На 3 и 4 странице - другая.


 
Dennis I. Komarov ©   (2010-12-02 16:24) [16]


> Анна   (02.12.10 16:12) [13]

Ну так почему же EXCEL???

> .. И заказчики не будут ее распечатывать, они получат готовый
> файл и отчитаются в электронном виде перед вышестоящей организацией.

Просто фигею... Какай-какая отчетность??? А что мешает туды бяку нарисовать? А потом скажут, мол программа криво посчитала. Глюки...


 
Dennis I. Komarov ©   (2010-12-02 16:28) [17]


> В том то и дело, что это элементарно. Но у меня, в зависимости
> от НД, на первых 2 страницах, например, будет одна шапка.
>  На 3 и 4 странице - другая.

Да хоть 34... Есть шапка. Сделали с ней шаблон. По необходимости заполнили. Сохранили как... Едем дальше...


 
Анна   (2010-12-02 16:28) [18]


> Dennis I. Komarov ©   (02.12.10 16:24) [16]

За многие годы работы никто еще бяку не рисовал  :))


 
Dennis I. Komarov ©   (2010-12-02 16:32) [19]


> За многие годы работы никто еще бяку не рисовал  :))

иногда одного раза достаточно... 810 на 840 поменяли и... :)


 
Анна   (2010-12-02 16:32) [20]


> Dennis I. Komarov ©   (02.12.10 16:28) [17]


> Сохранили как... Едем дальше...

Едем дальше на этом же листе, новая шапка игнорируется, повторяется естественно старая...


 
Dennis I. Komarov ©   (2010-12-02 16:37) [21]

Ну если шапка другая, то шаблон тоже другой...

Вобщем ВСЮ ситуацию в студию, или я отказываюсь понимать...


 
Анна   (2010-12-02 16:43) [22]

Ситуация такая: всего одни лист д.б. Но нем по мере заполнения образуются страницы, отделенные пуктирной чертой. Когда шаблон повторяем (шапка) то шапка присутствует только на первой странице, но на предварительном просмотре и для печати вставляется по всем страницам. И через 2 страницы уже не вставить другую шапку. Поэтому мне надо программно рисовать шапку (что я и делаю) и заполнять первые 2 листа, на 3 и 4 листе (например) снова программно рисовать уже другую шапку и снова заполнять данными из НД.
Денис, спасибо за участие. Побежала в садик.


 
Anatoly Podgoretsky ©   (2010-12-02 16:58) [23]

> Анна  (02.12.2010 13:40:00)  [0]

Говоришь массив переносишь и не знаешь в какую строчку и какой он длины?


 
Dennis I. Komarov ©   (2010-12-02 16:58) [24]

Начнем сначала:
Почему лист должен быть один?


> Но нем по мере заполнения образуются страницы, отделенные
> пуктирной чертой.

Не образуются там никаких страниц. Откройте чистый лист - нету там никаких пунктирных линий.


> но на предварительном просмотре и для печати вставляется
> по всем страницам. И через 2 страницы уже не вставить другую
> шапку.

Что мешает для каждой "шапки" иметь свой файл (про лист специально не говорю).


 
MonoLife ©   (2010-12-03 04:58) [25]


> Dennis I. Komarov ©   (02.12.10 16:58) [24]
>
> Почему лист должен быть один?

наверное, шаблон отчета нельзя менять (указ сверху) :)


 
Анна   (2010-12-03 09:04) [26]


> Anatoly Podgoretsky ©   (02.12.10 16:58) [23]


> Говоришь массив переносишь и не знаешь в какую строчку и
> какой он длины?

Знаю какой длины. Но какой высоты каждая строка будет- не знаю. Поэтому и хотела отследить конец страницы по мере вставки строки и при переходе на следующую страницу начинать ее (страницу) с шапки, которую програмным путем строю (никакого шаблона не использую, каждый раз рисую и заполняю новую шапку прогр. путем). И вопрос мой так и звучал, как отследить, что страница заполнена и следующая строка уже пойдет на следующий лист. (Поля заранее установлены). Может я как-то неправильно выражаюсь, и меня не понимают? :((


 
12 ©   (2010-12-03 09:05) [27]

а чтоб файло не поменяли - крепим его в ресурсы


 
Ой   (2010-12-03 09:13) [28]

А шо такое "ХП" ? Хрен Поймёжжж? )


 
Dennis I. Komarov ©   (2010-12-03 09:42) [29]


> А шо такое "ХП" ? Хрен Поймёжжж? )

К сути вопроса это не относится, но ИМХО, - Stored Procedure


 
Anatoly Podgoretsky ©   (2010-12-03 09:46) [30]

> Анна  (03.12.2010 09:04:26)  [26]

Это другое дело, с переменно длиной сложнее



Страницы: 1 вся ветка

Текущий архив: 2011.02.27;
Скачать: CL | DM;

Наверх




Память: 0.54 MB
Время: 0.013 c
2-1287694639
Ллирик
2010-10-22 00:57
2011.02.27
Offset на строковую константу


6-1201379773
Max.66RUS
2008-01-26 23:36
2011.02.27
Отправка файла POST-запросом...


2-1291576237
Виктор
2010-12-05 22:10
2011.02.27
о "тонких клиентах"


2-1291585874
Ghost del vonte
2010-12-06 00:51
2011.02.27
Проверка слов


15-1289860347
hattak
2010-11-16 01:32
2011.02.27
скриншот отдельного элемента страницы загруженной в IE ...