Конференция "Corba" » Нумерация страниц для печати в Delphi. [Delphi, Windows]
 
  • alexey_public © (13.02.06 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 © (13.02.06 14:52) [1]
    Оп, извините, название темы до конца не дописал, а как теперь поменять не знаю :-(.
    В общем  - нумерация страниц средствами Delphi в Excel через OLE (модераторы - подправьте).
  • AbrosimovA (14.02.06 09:43) [2]
    WorkSheet1.PageSetup.RightFooter:='Страница &P из &N';

    //Нумерация страниц
  • alexey_public © (14.02.06 10:46) [3]
    Не работает, вот что получается при preview:

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

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

    , то получаем все по вышеописанному алгоритму.
    Т.е. при preview видим такое:   "Страница] из Страниц]" именно так. После чего заходим в св-ва страницы, переходим к колонтитулам, видим там такое же в нижнем колонтитуле, потом нажимаем создать нижний колонтитул, в это окошке видим уже все как положено:"&[Страница] из &[Страниц]". И просто нажимаем Ok, ничего не меняя, и все моментально меняется - появляются цифры на своем положенном месте. У меня по этому поводу закралось подозрение, что при нажатии на "Создать нижний/верхний колонтитул" что-то создается на самом деле, или что-то меняется в св-вах документа, но отследить это при работе с макросами у меня не получается.
  • shapm © (26.02.06 18:13) [4]
    Работает схема WorkSheet.PageSetup.RightFooter := '&С ';
    где в '&С С-русская буква
  • shapm © (26.02.06 18:15) [5]
    Пардон, в догонку Excel 2003 русский
  • shapm © (27.02.06 09:09) [6]
    Для указания полного количества страниц можно использовать схему
    WorkSheet.PageSetup.RightFooter := ' страница &С из &К ';
    где соответственно С и К русские буквы.......
  • alexey_public © (27.02.06 10:42) [7]
    Есть!!!!!!!!!!!!!!!!!!!!
    Работает!!!!!!!!!!!!!
    Столь бурная радость объясняется тем, что данное решение я искал года эдак 4.....

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

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

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


    на
    RightFooter := ' страница &С из &К '

    .
    Все гениальное просто!
  • AvRUS (24.04.06 11:27) [8]
    Спасибо! :)
  • имя (17.05.06 19:31) [9]
    Удалено модератором
  • имя (11.09.06 22:59) [10]
    Удалено модератором
  • имя (14.09.06 03:50) [11]
    Удалено модератором
  • имя (18.09.06 14:54) [12]
    Удалено модератором
  • имя (18.07.07 22:39) [13]
    Удалено модератором
  • имя (19.07.07 05:45) [14]
    Удалено модератором
  • имя (20.07.07 07:03) [15]
    Удалено модератором
 
Конференция "Corba" » Нумерация страниц для печати в Delphi. [Delphi, Windows]
Есть новые Нет новых   [134431   +9][b:0][p:0.001]