Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Автоскрытие строк по значению в одной ячейки - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Автоскрытие строк по значению в одной ячейки
Fokus Дата: Вторник, 05.11.2024, 11:43 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

2303
Добрый день, помогите пожалуйста сделать макрос автоскрытие строк, я пользовался макросом с автоскрытием строк по значением в столбце, а как сделать по значению в одной ячейки, к примеру если в ячейке стоит значение 2 то скрыть 1 строку из трех, если значение 1, то скрыть 2 строки, а если значение 3, то все строки отобразить.
К сообщению приложен файл: primer1.xlsm (14.5 Kb)
 
Ответить
СообщениеДобрый день, помогите пожалуйста сделать макрос автоскрытие строк, я пользовался макросом с автоскрытием строк по значением в столбце, а как сделать по значению в одной ячейки, к примеру если в ячейке стоит значение 2 то скрыть 1 строку из трех, если значение 1, то скрыть 2 строки, а если значение 3, то все строки отобразить.

Автор - Fokus
Дата добавления - 05.11.2024 в 11:43
Nic70y Дата: Вторник, 05.11.2024, 12:28 | Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 9029
Репутация: 2374 ±
Замечаний: 0% ±

Excel 2010
Fokus, [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
[/vba]это событие листа,
следовательно макрос должен быть в модуле листа
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
     If Target.Address = "$J$1" Then
        If Target < 1 Or Target > 3 Then Exit Sub
        [7:8,14:15,21:22].EntireRow.Hidden = False
        If Target = 1 Then [7:8,14:15,21:22].EntireRow.Hidden = True
        If Target = 2 Then [7:7,14:14,21:21].EntireRow.Hidden = True
     End If
End Sub
[/vba]
К сообщению приложен файл: 18.xlsm (14.6 Kb)


ЮMoney 41001841029809
 
Ответить
СообщениеFokus, [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
[/vba]это событие листа,
следовательно макрос должен быть в модуле листа
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
     If Target.Address = "$J$1" Then
        If Target < 1 Or Target > 3 Then Exit Sub
        [7:8,14:15,21:22].EntireRow.Hidden = False
        If Target = 1 Then [7:8,14:15,21:22].EntireRow.Hidden = True
        If Target = 2 Then [7:7,14:14,21:21].EntireRow.Hidden = True
     End If
End Sub
[/vba]

Автор - Nic70y
Дата добавления - 05.11.2024 в 12:28
Fokus Дата: Четверг, 07.11.2024, 16:19 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

2303
Nic70y, Огромное спасибо
 
Ответить
СообщениеNic70y, Огромное спасибо

Автор - Fokus
Дата добавления - 07.11.2024 в 16:19
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!