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

Вход

Регистрация

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

 

= Мир MS Excel/Скрыть строки при тексте в другой ячейке - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Скрыть строки при тексте в другой ячейке
untablet Дата: Вторник, 13.11.2018, 09:19 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Нужно создать макрос для экселя. Задача такая.
Есть ячейка под адресом 7, 3 и в ней существует 2 выбора «ИП» и «ЮЛ».
Если выбрать ИП, то строки с 67 по 82 должны быть скрыты, если ЮЛ, то соответственно ничего не должно быть скрыто.
К сообщению приложен файл: ___.xlsm (90.4 Kb)


Сообщение отредактировал untablet - Вторник, 13.11.2018, 10:54
 
Ответить
СообщениеНужно создать макрос для экселя. Задача такая.
Есть ячейка под адресом 7, 3 и в ней существует 2 выбора «ИП» и «ЮЛ».
Если выбрать ИП, то строки с 67 по 82 должны быть скрыты, если ЮЛ, то соответственно ничего не должно быть скрыто.

Автор - untablet
Дата добавления - 13.11.2018 в 09:19
_Boroda_ Дата: Вторник, 13.11.2018, 09:24 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 16718
Репутация: 6505 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
- Прочитайте Правила форума
- Исправьте название темы согласно п.2 Правил форума (поконкретнее как-то, типа "Скрыть строки по ДА/НЕТ в другой ячейке"
- Приложите файл с исходными данными в формате Excel размером до 100кб согласно п.3 Правил форума


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение- Прочитайте Правила форума
- Исправьте название темы согласно п.2 Правил форума (поконкретнее как-то, типа "Скрыть строки по ДА/НЕТ в другой ячейке"
- Приложите файл с исходными данными в формате Excel размером до 100кб согласно п.3 Правил форума

Автор - _Boroda_
Дата добавления - 13.11.2018 в 09:24
untablet Дата: Вторник, 13.11.2018, 10:55 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
_Boroda_, исправил
 
Ответить
Сообщение_Boroda_, исправил

Автор - untablet
Дата добавления - 13.11.2018 в 10:55
Manyasha Дата: Вторник, 13.11.2018, 11:11 | Сообщение № 4
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 901 ±
Замечаний: 0% ±

Excel 2010, 2016
untablet, здравствуйте, у Вас защита листа стоит.
[vba]
Код
    ActiveSheet.Unprotect
    If Target.Value = "ИП" Then
        ' Скрытие строк.
        Rows("67:82").Hidden = True
    ' Если в ячейке 'ЮЛ'.
    ElseIf Target.Value = "ЮЛ" Then
        ' Отображение строк.
        Rows("67:82").Hidden = False
    End If
    ActiveSheet.Protect
[/vba] или просто пропишите
[vba]
Код
ActiveSheet.Protect UserInterfaceOnly:=True
[/vba]


ЯД: 410013299366744 WM: R193491431804
 
Ответить
Сообщениеuntablet, здравствуйте, у Вас защита листа стоит.
[vba]
Код
    ActiveSheet.Unprotect
    If Target.Value = "ИП" Then
        ' Скрытие строк.
        Rows("67:82").Hidden = True
    ' Если в ячейке 'ЮЛ'.
    ElseIf Target.Value = "ЮЛ" Then
        ' Отображение строк.
        Rows("67:82").Hidden = False
    End If
    ActiveSheet.Protect
[/vba] или просто пропишите
[vba]
Код
ActiveSheet.Protect UserInterfaceOnly:=True
[/vba]

Автор - Manyasha
Дата добавления - 13.11.2018 в 11:11
_Boroda_ Дата: Вторник, 13.11.2018, 11:15 | Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 16718
Репутация: 6505 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Так нужно?
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("C7")) Is Nothing Then
        Me.Unprotect
        If Range("C7") = "ИП" Then
            Rows("67:82").Hidden = True
        Else
            Rows("67:82").Hidden = False
        End If
        Me.Protect
    End If
End Sub
[/vba]
К сообщению приложен файл: -8-1.xlsm (92.6 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеТак нужно?
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("C7")) Is Nothing Then
        Me.Unprotect
        If Range("C7") = "ИП" Then
            Rows("67:82").Hidden = True
        Else
            Rows("67:82").Hidden = False
        End If
        Me.Protect
    End If
End Sub
[/vba]

Автор - _Boroda_
Дата добавления - 13.11.2018 в 11:15
untablet Дата: Вторник, 13.11.2018, 11:49 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
_Boroda_, Да, именно так) Огромное спасибо) В чем был подвох? Из-за защиты?
 
Ответить
Сообщение_Boroda_, Да, именно так) Огромное спасибо) В чем был подвох? Из-за защиты?

Автор - untablet
Дата добавления - 13.11.2018 в 11:49
_Boroda_ Дата: Вторник, 13.11.2018, 12:01 | Сообщение № 7
Группа: Админы
Ранг: Местный житель
Сообщений: 16718
Репутация: 6505 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Да
Ну и переделал Вам, чтобы не одну ячейку проверяло, а пересечение


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеДа
Ну и переделал Вам, чтобы не одну ячейку проверяло, а пересечение

Автор - _Boroda_
Дата добавления - 13.11.2018 в 12:01
  • Страница 1 из 1
  • 1
Поиск:

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