19. Таблицу в подчиненной форме невозможно раскрасить простым способом, для этого надо знать некоторые хитрости. Посмотрите этот пример.
Private Sub Form_Open(Cancel As Integer)
On Error Resume Next
'Назначаем цвет для всей таблицы
Me.DatasheetBackColor = RGB(180, 210, 180)
'Назначим в поле 'Дата' такое форматирование, чтобы
'выделить дату = 20 сентября 2000 года
With Me.Дата
.FormatConditions.Delete 'Удаляем все условия
'Назначение форматирования
.FormatConditions.Add acFieldValue, acEqual, "#09/20/2000#"
'Изменение цвета ячейки
With .FormatConditions(0)
.BackColor = 13434828 'Цвет фона
.FontBold = True 'Толщина букв
.ForeColor = RGB(255, 0, 0) 'Цвет символов - красный
End With
End With
'Назначим в поле 'Книга' такое форматирование, при котором
'будут отображаться строки с полем Сумма 30 рублей
With Me.Книга
.FormatConditions.Delete 'Удаляем все условия
.FormatConditions.Add acExpression, , "[Сумма]30" 'выражение
.FormatConditions(0).BackColor = 12632256 'Серый цвет фона
End With
'Назначим в поле 'Сумма' такое форматирование, при котором
'при входе в поле будет меняться цвет символов
With Me.Сумма
.FormatConditions.Delete 'Удаляем все условия
.FormatConditions.Add acFieldHasFocus 'Назначаем фокус
.FormatConditions(0).ForeColor = RGB(0, 0, 255) 'Синий цвет
.FormatConditions.Add acFieldValue, acBetween, "200", "500"
.FormatConditions(1).ForeColor = 255
End With
Err.Clear
End Sub