2015-04-23 3 views
-1

Мне нужно скрывать и отображать строки при нажатии в диапазоне.Скрыть/показать строки при нажатии на ячейку в заданном диапазоне

Ниже приведены диапазоны и соответствующие строки:

Range ("A1: L1") Ряды ("2:11")

Диапазон ("А12: L12") строк ("13 : 23 ")

Range (" A24: L24 ") Ряды (" 25:34")

Я не могу найти этот сценарий в коде. Любая помощь приветствуется.

+0

Google «Worksheet_SelectionChange() Событие» –

+0

мне нужно, чтобы увидеть пример, по меньшей мере, двух диапазонов, если выбран, то скрыть соответствующие строки (или отобразите если уже скрыт). – John

+0

Первый результат этого поиска Google показывает примеры использования этого события в VBA. Идея StackOverflow заключается в том, что мы будем _help_ вы, если у вас есть проблемы с программированием, но вы должны показать, что вы исследовали и пробовали для себя. Никто не будет просто писать код для вас. –

ответ

0

Возможно, я бы использовал группировку для этого случая вместо макроса VBA. Тем не менее, добавьте этот код в свой класс Worksheet:

Private Sub Worksheet_SelectionChange(ByVal Target As Range) 
    If Not Rows("2:11").Hidden Then Rows("2:11").Hidden = True 
    If Not Rows("13:23").Hidden Then Rows("13:23").Hidden = True 
    If Not Rows("25:34").Hidden Then Rows("25:34").Hidden = True 

    Select Case True 
     Case Not Intersect(Target, Range("A1:L1")) Is Nothing 
      Rows("2:11").Hidden = False 

     Case Not Intersect(Target, Range("A12:L12")) Is Nothing 
      Rows("13:23").Hidden = False 

     Case Not Intersect(Target, Range("A24:L24")) Is Nothing 
      Rows("25:34").Hidden = False 
    End Select 
End Sub 
+0

Спасибо, я не думал использовать случай выбора. – John

Смежные вопросы