Lotus And Word

Тема в разделе "Lotus - Программирование", создана пользователем yerke, 20 ноя 2008.

  1. yerke

    yerke Well-Known Member

    Регистрация:
    28 авг 2007
    Сообщения:
    392
    Симпатии:
    0
    Привет всем

    в лотусе делаю экспорт в ворд
    но возник вопрос

    можно ли программно определить на сколько (процентов) заполнено последняя страница сформированного документа

    это нада для следующеего
    если на последней странице окажется тока 2-3 строчки
    то спомощью пейдж брейка с предпоследней страницы спущу оперделенной кусок текста
     
  2. abbatik

    abbatik Lotus team
    Lotus team

    Регистрация:
    20 окт 2008
    Сообщения:
    277
    Симпатии:
    0
    Можно считать кол-во строчек (символов) и по ним соответсвенно определять заполняемость документа.

    Честно говоря не делал так, но это первое, что приходит в голову :)
     
  3. yerke

    yerke Well-Known Member

    Регистрация:
    28 авг 2007
    Сообщения:
    392
    Симпатии:
    0
    ну я могу до стучаться до последней страницей документа
    в ВБА есть класс Page
    но у этого Page-а нету проперти типа Simbols Count или Lines Count
     
  4. Medevic

    Medevic Что это ? :)
    Lotus team

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    Я думаю узнать такое непросто. Т.к. шрифты разные и всё такое. :)
    Посмотри объект ParagraphFormat и его свойство KeepWithNext.

    Также свойство KeepTogether. :)
     
  5. abbatik

    abbatik Lotus team
    Lotus team

    Регистрация:
    20 окт 2008
    Сообщения:
    277
    Симпатии:
    0
    У тебя есть Value, или Text.

    Логично :)
     
  6. yerke

    yerke Well-Known Member

    Регистрация:
    28 авг 2007
    Сообщения:
    392
    Симпатии:
    0
    все решил
     
  7. abbatik

    abbatik Lotus team
    Lotus team

    Регистрация:
    20 окт 2008
    Сообщения:
    277
    Симпатии:
    0
    Ну поделись с коллегами, может кому-то когда-то пригодится :)
     
  8. yerke

    yerke Well-Known Member

    Регистрация:
    28 авг 2007
    Сообщения:
    392
    Симпатии:
    0
    Код (Text):
    Function PageBreaker
    Const chars=300
    Dim PagesCounts
    Dim LPCC
    Dim break
    '=
    'PagesCounts=wdApp.ActiveDocument.ActiveWindow.Panes(1).Pages.Count '=for 11 and 12 versions
    PagesCounts=wdApp.ActiveDocument.BuiltinDocumentProperties("Number Of Pages").Value
    Print "Pages Counts="+Cstr(PagesCounts)
    If PagesCounts=1 Then Exit Function
    '=
    wdApp.Application.Selection.HomeKey(wdStory)   
    For i=1 To PagesCounts-1
    wdApp.Application.Browser.Next 
    Next
    Call wdApp.Application.Selection.EndKey(wdStory, wdExtend)     
    LPCC=wdApp.Application.Selection.Characters.Count
    Print Cstr(LPCC)
    If LPCC>chars Then Exit Function
    '=
    If Not Isnumeric(mainTableStudCount) Then Exit Function
    If Not Isnumeric(mainTableCaptionCount) Then Exit Function 
    break=Cint(mainTableStudCount)+Cint(mainTableCaptionCount)-4
    '=
    mainTable.Cell(break, 1).Select
    wdApp.Application.Selection.HomeKey(wdLine)                
    wdApp.Application.Selection.InsertBreak(wdPageBreak) '=спускаем несколько строк из таблицы
    ' с предпоследнего листа
    End Function
     
Загрузка...
Похожие Темы - Lotus And Word
  1. cybergeene
    Ответов:
    1
    Просмотров:
    2.797
  2. skala-ali
    Ответов:
    9
    Просмотров:
    4.837
  3. morpheus
    Ответов:
    4
    Просмотров:
    3.251
  4. ToxaRat
    Ответов:
    1
    Просмотров:
    2.415
  5. wowa
    Ответов:
    5
    Просмотров:
    3.435

Поделиться этой страницей