Программирование на Visual Basic | Microsoft Access. Добавление текстовых меток в отчет

В этом разделе сайта находятся примеры из сборника программ "Архив файлов на Microsoft Access". В нем рассказывается о программировании форм, отчетов, таблиц и других объектов. Используйте этот архив для изучения работы с приложением Microsoft Office Access и программированием на Visual Basic for Application. Тем кто уже знаком с VBA, используйте поиск для нахождения кодов. Наберите, например, DAO, ADO, Recordset и найдете нужную ссылку для решения проблемы с программированием

Microsoft Access. Добавление текстовых меток в отчет

10. Этот пример показывает, как можно добавить в отчет текст, например, комментарий расположенный не в таблице, а некотором месте.

Private Sub ОбластьДанных_Print(Cancel As Integer, PrintCount As Integer)
    funDrawText Me, 2700, "Наименование", "Распродажа" 'Добавляем в ячейку текст
    funDrawText Me, 50, "Цена", "Новая" 'Добавляем в ячейку текст
End Sub

'===============================================================
' Рисуем в поле текст strCaption в соответствии с условием
'
Private Function funDrawText(rpt As Report, pos As Single, strField As String, strCaption) As Long
Dim c As Control, h As Integer
        Set c = rpt.Section(acDetail).Controls(strField)
        h = rpt.FontSize 'Начальная высота шрифта
        If c  30 Then 'Условие для поля
            rpt.ScaleMode = 1 'Назначаем масштаб в твипах
            rpt.FontName = c.FontName  'Назначаем шрифт ячейки
            rpt.FontSize = 7  'Назначаем высоту текста
            rpt.ForeColor = RGB(255, 0, 0) 'Назначаем цвет
            rpt.CurrentX = pos + c.Left 'x координата текста в твипах
            rpt.CurrentY = 0 'y координата текста
            rpt.Print strCaption 'Печататем текст
        End If
        'Пример другого поля
        If strField = "Наименование" Then
            rpt.FontSize = 7  'Назначаем высоту текста
            rpt.ForeColor = RGB(0, 0, 255) 'Назначаем цвет
            rpt.CurrentX = pos + c.Left 'x координата текста в твипах
            rpt.Print strCaption 'Печататем текст
        End If
        
        rpt.FontSize = h 'Возвращаем размер шрифта для отчета
End Function

Добавить комментарий

Loading