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

Вход

Регистрация

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

 

= Мир MS Excel/Макрос скрытие и раскрытие "разделов/подразделов" - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Макрос скрытие и раскрытие "разделов/подразделов" (Макросы/Sub)
Макрос скрытие и раскрытие "разделов/подразделов"
Адри Дата: Суббота, 30.06.2018, 08:39 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Здравствуйте, подскажите
У меня имеется простой макрос на скрытие и раскрытие строк

Нужно чтобы при нажатии на "Раздел" разворачивались свёрнутые "подразделы" , а у меня они разворачиваются

Прикрепляю пример, там всё понятно
К сообщению приложен файл: 4430554.xltm(15.0 Kb)


Сообщение отредактировал Адри - Суббота, 30.06.2018, 11:41
 
Ответить
СообщениеЗдравствуйте, подскажите
У меня имеется простой макрос на скрытие и раскрытие строк

Нужно чтобы при нажатии на "Раздел" разворачивались свёрнутые "подразделы" , а у меня они разворачиваются

Прикрепляю пример, там всё понятно

Автор - Адри
Дата добавления - 30.06.2018 в 08:39
Pelena Дата: Суббота, 30.06.2018, 09:04 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 12838
Репутация: 2828 ±
Замечаний: 0% ±

Excel 2010, 2016 & Mac Excel
Файл не прикрепился, проверьте размер не более 100 кб


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
СообщениеФайл не прикрепился, проверьте размер не более 100 кб

Автор - Pelena
Дата добавления - 30.06.2018 в 09:04
Hugo Дата: Суббота, 30.06.2018, 09:44 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2826
Репутация: 637 ±
Замечаний: 0% ±

Нужно чтобы при нажатии на "Раздел" разворачивались свёрнутые "подразделы" , а у меня они разворачиваются
- а я думал что они должны разворачиваться...
Вы читаете что пишете?
Может файл внёс бы ясность...


excel@nxt.ru
webmoney: E265281470651 R418926282008 Z422237915069
 
Ответить
Сообщение
Нужно чтобы при нажатии на "Раздел" разворачивались свёрнутые "подразделы" , а у меня они разворачиваются
- а я думал что они должны разворачиваться...
Вы читаете что пишете?
Может файл внёс бы ясность...

Автор - Hugo
Дата добавления - 30.06.2018 в 09:44
Адри Дата: Суббота, 30.06.2018, 11:40 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Файл не прикрепился почему та, с ним будет всё ясно
Прикрепляю
К сообщению приложен файл: 4656726.xltm(15.0 Kb)
 
Ответить
СообщениеФайл не прикрепился почему та, с ним будет всё ясно
Прикрепляю

Автор - Адри
Дата добавления - 30.06.2018 в 11:40
RAN Дата: Суббота, 30.06.2018, 11:49 | Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4787
Репутация: 964 ±
Замечаний: 0% ±

2010
[vba]
Код
Sub Раздел()
    Rows.Hidden = False
End Sub
[/vba]


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение[vba]
Код
Sub Раздел()
    Rows.Hidden = False
End Sub
[/vba]

Автор - RAN
Дата добавления - 30.06.2018 в 11:49
Hugo Дата: Суббота, 30.06.2018, 13:27 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2826
Репутация: 637 ±
Замечаний: 0% ±

И в файле тоже вероятно не читали что пишете :)
ИМХО так нужно:
[vba]
Код
    Rows("3:7").EntireRow.Hidden = Rows("9:13").EntireRow.Hidden
    With Rows("3:7")
        .EntireRow.Hidden = Not (.EntireRow.Hidden)
    End With
    With Rows("9:13")
        .EntireRow.Hidden = Not (.EntireRow.Hidden)
    End Withh
[/vba]


excel@nxt.ru
webmoney: E265281470651 R418926282008 Z422237915069


Сообщение отредактировал Hugo - Суббота, 30.06.2018, 13:35
 
Ответить
СообщениеИ в файле тоже вероятно не читали что пишете :)
ИМХО так нужно:
[vba]
Код
    Rows("3:7").EntireRow.Hidden = Rows("9:13").EntireRow.Hidden
    With Rows("3:7")
        .EntireRow.Hidden = Not (.EntireRow.Hidden)
    End With
    With Rows("9:13")
        .EntireRow.Hidden = Not (.EntireRow.Hidden)
    End Withh
[/vba]

Автор - Hugo
Дата добавления - 30.06.2018 в 13:27
Адри Дата: Суббота, 30.06.2018, 18:25 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Hugo, спасибо, но скорее всего я не правильно объяснил чего я хочу

В моём примере: Кнопка "Раздел" - разворачивает и сворачивает кнопки "1 Подраздел и 2 Подраздел" и их строчки,
но мне не нужно чтоб он при разворачивании, показывал только кнопки "1 Подраздел и 2 подраздел" без строчек!

С уважением Дмитрий
 
Ответить
СообщениеHugo, спасибо, но скорее всего я не правильно объяснил чего я хочу

В моём примере: Кнопка "Раздел" - разворачивает и сворачивает кнопки "1 Подраздел и 2 Подраздел" и их строчки,
но мне не нужно чтоб он при разворачивании, показывал только кнопки "1 Подраздел и 2 подраздел" без строчек!

С уважением Дмитрий

Автор - Адри
Дата добавления - 30.06.2018 в 18:25
nilem Дата: Суббота, 30.06.2018, 18:55 | Сообщение № 8
Группа: Авторы
Ранг: Старожил
Сообщений: 1468
Репутация: 518 ±
Замечаний: 0% ±

Excel 2013
Может угадаю? )
[vba]
Код
Sub Раздел()
If Rows(2).EntireRow.Hidden = True Then
    Rows("2:13").EntireRow.Hidden = True
    Rows(2).EntireRow.Hidden = False
    Rows(8).EntireRow.Hidden = False
Else
    Rows("2:13").EntireRow.Hidden = True
End If
End Sub
[/vba]


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеМожет угадаю? )
[vba]
Код
Sub Раздел()
If Rows(2).EntireRow.Hidden = True Then
    Rows("2:13").EntireRow.Hidden = True
    Rows(2).EntireRow.Hidden = False
    Rows(8).EntireRow.Hidden = False
Else
    Rows("2:13").EntireRow.Hidden = True
End If
End Sub
[/vba]

Автор - nilem
Дата добавления - 30.06.2018 в 18:55
boa Дата: Суббота, 30.06.2018, 18:58 | Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 134
Репутация: 20 ±
Замечаний: 0% ±

2013, 2016
Адри,
могу предположить...
[vba]
Код
Sub Раздел()
    Dim Vis As Boolean: Vis = Rows(2).Hidden
    Rows("2:13").Hidden = True
    Range("2:2,8:8").EntireRow.Hidden = Not Vis
End Sub

Sub Подраздел1()
    With Rows("3:7")
        .Hidden = Not .Hidden
    End With
End Sub

Sub Подраздел2()
    With Rows("9:13")
        .Hidden = Not .Hidden
    End With
End Sub
[/vba]




Сообщение отредактировал boa - Суббота, 30.06.2018, 19:10
 
Ответить
СообщениеАдри,
могу предположить...
[vba]
Код
Sub Раздел()
    Dim Vis As Boolean: Vis = Rows(2).Hidden
    Rows("2:13").Hidden = True
    Range("2:2,8:8").EntireRow.Hidden = Not Vis
End Sub

Sub Подраздел1()
    With Rows("3:7")
        .Hidden = Not .Hidden
    End With
End Sub

Sub Подраздел2()
    With Rows("9:13")
        .Hidden = Not .Hidden
    End With
End Sub
[/vba]

Автор - boa
Дата добавления - 30.06.2018 в 18:58
Адри Дата: Суббота, 30.06.2018, 20:11 | Сообщение № 10
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
nilem, , и правда логично) boa, Всё ништяк, Вы просто красавчеГи) А теперь вопрос? такой, где будет быстрее срабатывать ? почему такой вопрос задаю, у меня 20 разделов по 4 подраздела в каждом Подразделе строчек 50 + - , и ещё с сжатыми картинками и этот "прайс с товарами" я скидываю сотням людям! и не у всех компьютеры мощные.
Через команду Dim быстрее будет? или также?

И вопрос не по теме, (можно проигнорировать) У моих покупателей MS Exel не свежие могут быть версии, и мой прайс иногда некорректно работает у них, а ещё хуже, когда они открывают через Open office, и тогда вообще ужас=) Вообще реально такое сделать, чтоб у всех работало нормально как у меня?
С уважением Дмитрий
 
Ответить
Сообщениеnilem, , и правда логично) boa, Всё ништяк, Вы просто красавчеГи) А теперь вопрос? такой, где будет быстрее срабатывать ? почему такой вопрос задаю, у меня 20 разделов по 4 подраздела в каждом Подразделе строчек 50 + - , и ещё с сжатыми картинками и этот "прайс с товарами" я скидываю сотням людям! и не у всех компьютеры мощные.
Через команду Dim быстрее будет? или также?

И вопрос не по теме, (можно проигнорировать) У моих покупателей MS Exel не свежие могут быть версии, и мой прайс иногда некорректно работает у них, а ещё хуже, когда они открывают через Open office, и тогда вообще ужас=) Вообще реально такое сделать, чтоб у всех работало нормально как у меня?
С уважением Дмитрий

Автор - Адри
Дата добавления - 30.06.2018 в 20:11
Pelena Дата: Суббота, 30.06.2018, 20:22 | Сообщение № 11
Группа: Модераторы
Ранг: Местный житель
Сообщений: 12838
Репутация: 2828 ±
Замечаний: 0% ±

Excel 2010, 2016 & Mac Excel
Адри, последний вопрос, действительно, не по теме. Для обсуждения создайте новую тему. Про Open office есть отдельная ветка форума


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
СообщениеАдри, последний вопрос, действительно, не по теме. Для обсуждения создайте новую тему. Про Open office есть отдельная ветка форума

Автор - Pelena
Дата добавления - 30.06.2018 в 20:22
Адри Дата: Суббота, 30.06.2018, 20:47 | Сообщение № 12
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Pelena, Хорошо, спасибо
 
Ответить
СообщениеPelena, Хорошо, спасибо

Автор - Адри
Дата добавления - 30.06.2018 в 20:47
Hugo Дата: Суббота, 30.06.2018, 21:22 | Сообщение № 13
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2826
Репутация: 637 ±
Замечаний: 0% ±

В моём варианте если нужно прятать и заголовки - обрабатывайте Rows("2:7") и Rows("8:13"). При таком варианте при раскрытии будет раскрываться всё. И прятаться всё. Ну может вдруг так понадобится.


excel@nxt.ru
webmoney: E265281470651 R418926282008 Z422237915069
 
Ответить
СообщениеВ моём варианте если нужно прятать и заголовки - обрабатывайте Rows("2:7") и Rows("8:13"). При таком варианте при раскрытии будет раскрываться всё. И прятаться всё. Ну может вдруг так понадобится.

Автор - Hugo
Дата добавления - 30.06.2018 в 21:22
nilem Дата: Воскресенье, 01.07.2018, 05:58 | Сообщение № 14
Группа: Авторы
Ранг: Старожил
Сообщений: 1468
Репутация: 518 ±
Замечаний: 0% ±

Excel 2013
На всякий случай, вот здесь есть что-то похожее.


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеНа всякий случай, вот здесь есть что-то похожее.

Автор - nilem
Дата добавления - 01.07.2018 в 05:58
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Макрос скрытие и раскрытие "разделов/подразделов" (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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