Я использую Access 2010 для создания нескольких отчетов и не могу понять, как скрыть заголовок группы, если он пуст.
Представьте, что у меня есть такая таблица (примечание, я ничего не знаю об автомобилях, это просто пример):
H1 | H2 | H3 | H4 | DATA1 | DATA2 | DATA3 car | chassis | engine | pistons | data_a1 | data_a2 | data_a3 car | chassis | engine | pistons | data_b1 | data_b2 | data_b3 car | chassis | engine | pistons | data_c1 | data_c2 | data_c3 car | chassis | engine | cylinder | data_a1 | data_a2 | data_a3 car | chassis | engine | cylinder | data_b1 | data_b2 | data_b3 car | interior | | seats | data_a1 | data_a2 | data_a3 car | interior | | seats | data_b1 | data_b2 | data_b3
У меня есть 3 групповых заголовка столбцов H1, H2 и H3 в таком порядке. У меня проблема в том, что когда H3 не содержит текста (т.е. "" (я думаю, что доступ оценивает это как нуль)) я хочу скрыть заголовок группы для H3 или, по крайней мере, сделать так, чтобы он не занимал места в отчете. В настоящее время там, где H3 пуст, отчет по-прежнему содержит пустую строку.
Я пробовал это и подобное в событиях Paint и/или Print GroupHeader3.
If IsNull([H3]) Then
Me.GroupHeader3.Height = 0
Me.GroupHeader3.BackColor = vbRed
Me.GroupHeader3.Visible = False
Else
Me.GroupHeader3.Height = 5
Me.GroupHeader3.BackColor = vbGreen
End If
Идея, кажется, работает, то есть, если я закомментирую строку Visible=False, я получу красный или зеленый фон в нужных местах, однако он полностью игнорирует параметр высоты. Если я поставлю Visible = False, он жалуется, что его нельзя поместить в событие on Paint.
Я также пытался поместить аналогичный код в событие рисования GroupHeader2, но безрезультатно. Ближайший, который у меня есть, просто сидит и мерцает.
Я новичок в vba, поэтому я могу упустить что-то очевидное, но на данный момент я не совсем уверен, как действовать, поэтому любая помощь будет высоко оценена.
РЕДАКТИРОВАТЬ Для ясности:
Отчет выглядит примерно так:
H1 H2 H3 H4 DATA1 DATA2 DATA3
Таким образом, с приведенными выше примерными данными это будет выглядеть так:
car chassis engine pistons data_a1 data_a2 data_a3 data_b1 data_b2 data_b3 data_c1 data_c2 data_c3 cylinder data_a1 data_a2 data_a3 data_b1 data_b2 data_b3 interior seats data_a1 data_a2 data_a3 data_b1 data_b2 data_b3
Это пустая строка (заголовок группы 3) между салоном и сиденьями, которых я хочу избежать. Спасибо