У меня есть таблица данных, в которой набор строк необходимо скрыть на основе критериев, установленных в другом наборе ячеек.Я написал что-то, что по сути является «кодированием пещерного человека», и, конечно, это не работает:)
Я создал if и попытался поместить if в ifs, но буквально с этим кодом ничего не происходит.
Я написал только 2 набора строк, но это около 30 различных наборов (еще не написано)
Sub Worksheet_Change(ByVal Target As Range)
Set Target = Range(Cells(7, 8), Cells(7, 8))
Set Target1 = Range(Cells(3, 2), Cells(3, 2))
If Target.Value = "No"
Rows("8:29").EntireRow.Hidden = True
If Target.Value = "Yes" And Target1.Value = "Half" Then
Rows("22:29").EntireRow.Hidden = True
ElseIf Target.Value = "Yes" And Target1.Value = "Full" Then
Rows("8:29").EntireRow.Hidden = False
End If
End If
Set Target = Range(Cells(30, 8), Cells(30, 8))
Set Target1 = Range(Cells(3, 2), Cells(3, 2))
If Target.Value = "No"
Rows("31:56").EntireRow.Hidden = True
If Target.Value = "Yes" And Target1.Value = "Half" Then
Rows("47:56").EntireRow.Hidden = True
ElseIf Target.Value = "Yes" And Target1.Value = "Full" Then
Rows("31:56").EntireRow.Hidden = False
End If
End If
End Sub
Итак, в кратком изложении у меня есть две переменные в ячейке B3 (половина и полная))
и в строке H в указанных ячейках (например, H7, H30 и т. Д.) Да / Нет вариантов.строки 7, 30 (любая строка, имеющая опцию Да / Нет) являются заголовками тем с 8 по 29, детали этой темы включены.
если H7 (H30 ...) - Нет - все детали должны быть скрыты (строки 8-29; 31-56 и т. Д.) - значение в B3 не имеет значения.Если H7 (H30 ...) - Да, то значение в B3 имеет значение: Если H7 (H30 ...) - Да, а B3 - это наполовину - скрытые строки 22-29 (47-56 и т. Д.), Строки 8-21в данном случае не скрыто Если H7 (H30 ...) - Да, а B3 заполнено - строки 8-29 не скрыты.
Надеюсь, я хорошо это объяснил.
Пожалуйста, помогите мне улучшить мойкод, чтобы иметь возможность сделать поставленную цель.