2014-07-29 3 views
1

В режиме конструктора отчета у меня есть этот enter image description hereReport Page Footer Sum Error

В четвертой колонке, эти два "= SUM ([SUM ...." текстовые поля как говорят, «= Sum ([SUM660201 ]) ". Имя столбца -" SUM660201 ".

В представлении отчета, однако, только первое текстовое поле (то, что подробно, а не в нижнем колонтитуле страницы, правильно вычисляет сумму). , он говорит: "# Ошибка", а не "257,71"

enter image description here

Я хочу, чтобы сумма вычислялась в нижнем колонтитуле страницы, а не в деталях. Как сделать сумму в нижней части страницы?

+0

Вы попытались удалить его из детали? Вы создали этот отчет с помощью Мастера или что? –

+0

@OverMind, я построил этот отчет с помощью мастера. По сути, у меня было текстовое поле в нижнем колонтитуле, и оно не показывалось. затем я попытался поместить его в Деталь и увидел, что он точно отобразил его. – johnsimer

ответ

0

От here

нижний колонтитул и заголовков секций, однако, не поддерживают вычисляемые элементы управления, которые используют агрегатные функции, такие как Sum

Однако вы можете использовать VBA для вычисления агрегатов страницы. Связанная статья MS объясняет, как это сделать. Резюме их обучения заключается в следующем: с шагом доступа

Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer) 
    If PrintCount = 1 Then 
    txtPageSum = txtPageSum + ExtendedPrice 
    txtPageQuantity = txtPageQuantity + Quantity 
    End If 
End Sub 

[PrintCount] свойство один всякий раз, когда данные для текущего раздела печатается. Поскольку времена, когда событие «Печать» для раздела «Детали» для конкретной записи можно было вызвать более одного раза, проверка значения PrintCount гарантирует, что вы не добавите одно и то же значение дважды к общей странице.

Сброс номера для следующей страницы печати

Private Sub PageHeaderSection_Print(Cancel As Integer, _ 
            PrintCount As Integer) 
    txtPageSum = 0 
    txtPageQuantity = 0 
End Sub 

Опять же, увидеть MS help page для более подробной информации.