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

Вниз

Нумерация страниц для печати в Delphi.   Найти похожие ветки 

 
alexey_public ©   (2006-02-13 14:50) [0]

Сначала посмотрел как работает макрос:

With ActiveSheet.PageSetup
.RightFooter = "&P"
End With

Я его ковертирую в следующее (только нужное) через OLE
var
WorkSheet:OleVariant;
...
WorkSheet.PageSetup.RightFooter := "&P";

В общем этот вариант вообще не работает по страницам, НО если туда вписать следующее
WorkSheet.PageSetup.RightFooter := "&[Страница]";
Т.е. тоже что он пишет и в самом диалоговом окне - то тогда получается интереснее - сначала он это печатает просто как текст, но стоит лишь войти в св-ва страницы и войти-выйти в нужный колонтитул ничего не меняя, но все сохраняя -то Excel моментально начинает печать номера страницы как ни в чем не бывало.
А самое интересное - если смотреть через макрос то там так и стоит эта же строчка
.RightFooter = "&P"


 
alexey_public ©   (2006-02-13 14:52) [1]

Оп, извините, название темы до конца не дописал, а как теперь поменять не знаю :-(.
В общем  - нумерация страниц средствами Delphi в Excel через OLE (модераторы - подправьте).


 
AbrosimovA   (2006-02-14 09:43) [2]

WorkSheet1.PageSetup.RightFooter:="Страница &P из &N";//Нумерация страниц


 
alexey_public ©   (2006-02-14 10:46) [3]

Не работает, вот что получается при preview:

"Страница  из  "

т.е. на месте цифр стоят пробелы.
А у вас какой офис?
У меня 2003 RUS (и на рабочих местах тоже RUS), я как-то давно с такой пробелмой столкнулся и заметил, что на английском офисе вариант с &P проходит лучше. Но тогда я не смог ее решить.
Если написать такое:
WorkSheet1.PageSetup.RightFooter:="&[Страница] из &[Страниц]", то получаем все по вышеописанному алгоритму.
Т.е. при preview видим такое:   "Страница] из Страниц]" именно так. После чего заходим в св-ва страницы, переходим к колонтитулам, видим там такое же в нижнем колонтитуле, потом нажимаем создать нижний колонтитул, в это окошке видим уже все как положено:"&[Страница] из &[Страниц]". И просто нажимаем Ok, ничего не меняя, и все моментально меняется - появляются цифры на своем положенном месте. У меня по этому поводу закралось подозрение, что при нажатии на "Создать нижний/верхний колонтитул" что-то создается на самом деле, или что-то меняется в св-вах документа, но отследить это при работе с макросами у меня не получается.


 
shapm ©   (2006-02-26 18:13) [4]

Работает схема WorkSheet.PageSetup.RightFooter := "&С ";
где в "&С С-русская буква


 
shapm ©   (2006-02-26 18:15) [5]

Пардон, в догонку Excel 2003 русский


 
shapm ©   (2006-02-27 09:09) [6]

Для указания полного количества страниц можно использовать схему
WorkSheet.PageSetup.RightFooter := " страница &С из &К ";
где соответственно С и К русские буквы.......


 
alexey_public ©   (2006-02-27 10:42) [7]

Есть!!!!!!!!!!!!!!!!!!!!
Работает!!!!!!!!!!!!!
Столь бурная радость объясняется тем, что данное решение я искал года эдак 4.....

shapm огромная благодарность! :-) (и не только от меня, но и от всех пользователей моего ПО, очень вовремя кстати - именно сегодня надо отдать один очень мелкий проект с как раз таки этой необходимой функцией).

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

P.S. Немного обидно что сам не догадался - решение в сущности простое - действительно для русского офиса было бы логично заменить
RightFooter:="Страница &P из &N"
на
RightFooter := " страница &С из &К ".
Все гениальное просто!


 
AvRUS   (2006-04-24 11:27) [8]

Спасибо! :)


 
имя   (2006-05-17 19:31) [9]

Удалено модератором


 
имя   (2006-09-11 22:59) [10]

Удалено модератором


 
имя   (2006-09-14 03:50) [11]

Удалено модератором


 
имя   (2006-09-18 14:54) [12]

Удалено модератором


 
имя   (2007-07-18 22:39) [13]

Удалено модератором


 
имя   (2007-07-19 05:45) [14]

Удалено модератором


 
имя   (2007-07-20 07:03) [15]

Удалено модератором



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

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

Наверх




Память: 0.5 MB
Время: 0.007 c
2-1356079437
Женя
2012-12-21 12:43
2013.09.01
Квадратное уравнение


15-1364589003
Юрий
2013-03-30 00:30
2013.09.01
С днем рождения ! 30 марта 2013 суббота


15-1364324720
Дмитрий С
2013-03-26 23:05
2013.09.01
Интересная ошибка.


15-1364473732
alexdn
2013-03-28 16:28
2013.09.01
Переносной принтер


2-1355929661
sas9568635
2012-12-19 19:07
2013.09.01
Написать Компилятор языка Дельфи (Паскаль)