Страницы: 1
RSS
Управление разрывами страниц
 
Добрый день.
Имеется следующая задача.
Имеется форма Торг-12: Заголовок, табличная часть, и подписи.
Смысл такой, что если на последней странице нет табличной части, то необходимо на нее перенести две последние строки из табличной части.

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

Теперь вопрос - а как это правильнее сделать?


Может кто-то сталкивался с такой проблемой?
 
Вставьте в начало макроса:
Код
Activesheet.ResetAllPageBreaks
 
Цитата
После табличной части, есть строка "Итого по накладной". Я хочу завязаться на эту надпись.
Код
Sub Wstavka()
Dim Kol_voStrok As Integer
Dim StrokaWsego As Integer
Dim Wsego As Object
  'число строк на первом листе активной страницы
  Kol_voStrok = ActiveSheet.HPageBreaks(1).Location.Row - 1
  Set Wsego = ActiveSheet.Columns("F:L").Find("Всего по накладной :  ", , xlValues, xlWhole)
  StrokaWsego = Wsego.Row   'строка с Всего по накладной :
      'дальше проверяйте условие StrokaWsego больше или меньше Kol_voStrok и добавляйте разрыв
      'добавляет горизонтальный разрыв над ячейкой iCell
      'ActiveSheet.HPageBreaks.Add iCell

End Sub
 
Кросс
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Страницы: 1
Наверх