233 / 95 / 15
Регистрация: 31.12.2009
Сообщений: 224
1

Как в Excel найти середину области печати

31.12.2009, 10:24. Показов 4754. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, уважаемые участники форума.
Вкрадце о задаче: Имеется отчёт в Excel, который делаю по шаблону с помощью своего компонента-обёртки над ExcelApplication. Лист гарантировано заполняется менее чем наполовину. Необходимо продублировать сформированную часть отчёта с середины листа. Как это сделать? Заранее благодарен.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.12.2009, 10:24
Ответы с готовыми решениями:

Задание области печати листа Excel программным путем
Доброго времени суток. Пытаюсь сделать банальную вещь - вывести отчет на принтер из программы....

Как узнать координаты области печати?
Вопрос стоит следующим образом. Я устанавливаю размер страницы и ориентацию для принтера: ...

Печать: как сделать перенос строки в области печати
Вечер добрый! В проекте печатаю документ (с помощью PrintDialog), но строка уходит в...

Excel при печати разбивает область печати по ячейкам
При масштабировании страницы (чтобы документ влез на одну страницу) Ексель автоматом определяет...

5
233 / 95 / 15
Регистрация: 31.12.2009
Сообщений: 224
11.01.2010, 10:08  [ТС] 2
Вопрос был не из лёгких )).

Тему закрываю, решил проблему сам
0
233 / 95 / 15
Регистрация: 31.12.2009
Сообщений: 224
11.01.2010, 16:38  [ТС] 3
Не трудно. Но решение не блещет гибкостью.
Ещё раз хочется разъяснить задачу, т.к. в прошлый раз я, возможно, недостаточно полно её описал.
Генерирую отчёт в Excel. Использую свой компонент на основе TExcelApplication и шаблоны. Отчёты получаются небольшие, т.е. умещаются на половине листа. По заданию необходимо делать копию полученной "верхней" части отчёта внизу таким образом, чтобы лист можно было разрезать пополам и части получились бы одинаковые половинки. Надеюсь понятно написал ). Найти какие либо св-ва и методы, позволяющие получить строку, указывающую на середину печатаемой области листа мне не удалось. А без этой строки, ясно дело, я не могу скопировать содержимое "верха" по ценру листа.
Решил проблему дубово. Посчитал количество пикселей до середины листа в самом шаблоне (пусть будет H), и после формирования "верха" выполняю поиск номера строки считая сумму высот строк H[i] пока не дойду до H. i и будет искомая строка. Проблема в том, что такой способ годится только для жёстко заданных шаблонов, т.е. если вы что-то в нём сменили(например, поля), придётся менять исходник, что есть ОЧЕНЬ плохо, т.к. я именно от этого и хотел отказаться.

Вообще цель моих изысканий заключается в том, чтобы минимально менять код, а максимально всё делать в шаблоне. Если кто знает хорошую литературу, не поскупитесь, киньте ссылку. Закрытые компоненты не интересуют. Заранее спасибо.
1
3450 / 1638 / 236
Регистрация: 26.02.2009
Сообщений: 7,983
Записей в блоге: 5
31.01.2010, 21:44 4
Не знаю на сколько эта литература окажется полезной, но там как раз MS Excel и Word(правда для делфи):
Программирование документов и приложений MS Office в Delphi
0
233 / 95 / 15
Регистрация: 31.12.2009
Сообщений: 224
01.02.2010, 14:34  [ТС] 5
Могу я уточнить, собственно, источник?
Цитата Сообщение от snake32 Посмотреть сообщение
Программирование документов и приложений MS Office в Delphi
- это название книги? Или статьи?
0
3450 / 1638 / 236
Регистрация: 26.02.2009
Сообщений: 7,983
Записей в блоге: 5
01.02.2010, 16:43 6
Это книга
http://samouchka.net/ebooks/ya... jj-ms.html
1
01.02.2010, 16:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.02.2010, 16:43
Помогаю со студенческими работами здесь

Как на основной области страницы создать область печати (textarea) с привязкой к активному элементу дерева?
товарищи, уперся в недостаток опыта и знаний... 1. нажимаю на элемент дерева он выделяется...

Как найти середину даты между двумя датами
Прошу помочь решить такую задачку в PHP. ест 2 дата 1. 2015-11-20 2. 2016-02-20 Нужно...

Как найти середину треугольника по координатам его вершин
как найти середину треугольника по его координатам?

Как найти середину массива или центральный элемент к блоке?
A это 3Д массив, A =, где a_N это 2Д массив. Мне нужно собрать 2Д массив в блоки по 2,3,4 и тд...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru