У меня есть два листа Excel "Сводка" и "Единицы предложения". Я хочу, чтобы строка 12 на сводной странице скрывалась на основе значения R12 на листе единиц предложения. То же самое относится ко всем строкам между 12-27 в Сводном листе на основе значения в ячейках (R: 27,59,72,76,122,136,222,231,302,322,329,367,450,467,482,493) на листе единиц предложения. Я использую следующий код, который просто показывает переключатель и первую строку из 12 на листе "Сводка" и ячейку R12 на листе "Единицы предложения". Никаких действий не произошло, когда я запустил это только для проверки.

Private Sub ToggleButton1_Click()

End Sub

Private Sub Worksheet_Change(ByVal Target As Range)

    Application.ScreenUpdating = False

    If Intersect(Target, Range("R12:R493")) Is Nothing Then Exit Sub

    If Target.Address = ("$R$12") And Target.Value = "NO" Then
        Sheets("Summary").Row("11").EntireRow.Hidden = False
    ElseIf Target.Address = ("$R$12") And Target = "YES" Then
        Sheets("Summary").Row("11").EntireRow.Hidden = True

    End If

    Application.ScreenUpdating = True

End Sub

End Sub

1 ответ1

0

Найди разницу ... ты ударишь себя, когда увидишь это ...

Private Sub Worksheet_Change(ByVal Target As Range)

Application.ScreenUpdating = False

Dim n As Integer

If Intersect(Target, Range("R12:R493")) Is Nothing Then Exit Sub

Sheets("Data").Range("A1") = Target.Row
n = Sheets("Data").Range("A2").Value


If Target.Address = ("$R$12") And Target.Value = "NO" Then
    Sheets("Summary").Rows("n").EntireRow.Hidden = False
ElseIf Target.Address = ("$R$12") And Target = "YES" Then
    Sheets("Summary").Rows("n").EntireRow.Hidden = True

End If

Application.ScreenUpdating = True

End Sub

Вам нужно использовать "Rows", а не "Row"

РЕДАКТИРОВАТЬ: вам нужно создать другой лист с именем "Данные" (или что-то еще, просто обновите формулу и макрос). Оставьте ячейку A1 пустой, в ячейку A2 добавьте следующую формулу

=VLOOKUP(A1,C:D,2,FALSE)

Затем в столбце C укажите номер целевой строки, а в столбце D - номера строк, которые необходимо скрыть.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .