|
|
|
| Как программно задать отказ от печати нижнего колонтитула на первой и последней странице отчета?
На сайте Microsoft нашёл выражение, но не работает выдаёт ошибку.
Reports!Reports1.PageFooter = (0,1,2,3) | |
|
| |
|
|
|
| Reports!Reports1.PageFooter = 3
Это, если отчет открыть в режиме конструктора.
"На лету" это делается на событии Report_Open, и пишется так: Me.PageFooter = 3 | |
|
| |
|
|
|
| Всё равно выдаёт ошибку. Не пойму в чём дело. | |
|
| |
|
|
|
| А у вас колонтитулы присутствуют в отчете? | |
|
| |
|
|
|
|
|
HELP: You can set the PageFooter property only in report Design view.
| Так что по поводу "На лету это делается на событии Report_Open" я погорячился. Какая у вас задача? Почему нельзя указать это свойство заранее? | |
|
| |
|
|
|
| Задача в том, что бы колонтитул вывести только на последней странице.
Me.НижнийКолонтитул.Visible = False работает не корректно, а Cancel = 0 оставляет пустые поля.
Вот я и подумал воспользоваться свойством отчёта. | |
|
| |
|
|
|
| 1. Инструкция Reports!Reports1.PageFooter = 3, даже если бы она и работала "на лету", имела бы эффект, обратный вашему замыслу (колонтитул вывести только на последней странице), т.к. не выводит колонтитул на первой и последней странице.
2. "Cancel = 0 оставляет пустые поля" в том случае, если вы применяете его на событие PageFooter_Print. Попробуйте на PageFooter_Format.
3. Может вам лучше использовать раздел "Примечание отчета"? | |
|
| |
|
|
|
| 1. В моём в отчёте надо в определённых случаях выводить или примечание отчета или нижний колонтитул. Поэтому инструкция Reports!Reports1.PageFooter = 3 подошла бы. Но никак не могу её заставить работать.
2. У меня и на событие PageFooter_Format тоже остаются пустые поля. Так как высота колонтитула 6 см, то это сильно портит документ.
3. Может и можно использовать раздел "Примечание отчета", но надо как-то опустить его вниз документа. | |
|
| |
|
|
|
|
Как программно задать отказ от печати нижнего колонтитула на первой и последней странице отчета?
|
Private Sub НижнийКолонтитул_Format(Cancel As Integer, FormatCount As Integer)
Cancel = ([Page] = 1 Or [Page] = [Pages])
End Sub
|
| |
|
| |
|
|
|
|
Задача в том, что бы колонтитул вывести только на последней странице.
|
Private Sub НижнийКолонтитул_Format(Cancel As Integer, FormatCount As Integer)
Cancel = Not([Page] = [Pages])
End Sub
|
| |
|
| |
|
|
|
| Cancel = Not([Page] = [Pages]) - работает, но там где нет колонтитулов остаются пустые места. Пустые места в 6 см портят вид документа.
If Not (Me.Page = Me.Pages) Then Me.PageFooter.Visible = False - нет пустых мест, но работает не корректно (мне кажется, из-за неправильного вычисления [Pages]) | |
|
| |
|
|
|
| А если вместо
Me.Page = Me.Pages
использовать
[Page] = [Pages]
? | |
|
| |
|
|
|
| Всё одно.
Вот я и подумал, если с колонтитулом не получается, может попробовать примечаем отчёта опустить вниз документа.
Из высоты страницы вычесть высоту области данных на последней странице. На разницу увеличить высоту примечания отчёта и опустить текстовые поля. | |
|
| |
|
|
|
|
В моём в отчёте надо в определённых случаях выводить или примечание отчета или нижний колонтитул.
|
Надо разобраться для начала в голове, чего же таки надо от отчета?
Три взаимоисключающих задачи подряд. | |
|
| |