Страницы: 1
RSS
Макрос скрыть/раскрыть столбцы по нажатию кнопки
 
Может ли макрос который скрывает столбцы по нажатию кнопки, работать обратно т. е. раскрывать те самые столбцы? Если да, то как?  
 
ну как, как .EntireColumn.Hidden = False
По вопросам из тем форума, личку не читаю.
 
БМВ, вот так вот что ли? Скорее всего не так, ибо не работает, а как не подскажите?
Код
Sub HideCollumn()
Columns(5).EntireColumn.Hidden = False
End Sub
 
 
KoguarLTE, если столбцы смежные, сгруппируйте их (Данные - Группировать) и скрывайте/раскрывайте без всякого макроса.
 
Я бы вообще написал:
Код
Sub HideCollumn()
    Columns(5).EntireColumn.Hidden = Not (Columns(5).EntireColumn.Hidden)
End Sub

Чтобы видимое делало невидимым, а невидимое видимым.
Я не волшебник, я только учусь.
 
Wiss, о, курть! Спасибо Вам!
Казанский, спасибо, но мне такое не подходит, у меня там целая куча листов, только на определенных по условию нужно скрывать столбики, ну это я умею, а вот назад как вернуть... Научили :D  
Изменено: KoguarLTE - 20.03.2019 17:54:04
 
Wiss,
как ни страннно, но больше строк, а правильнее и не с точки зрения компактности, а с точки зрения обращения к объекту
Код
Sub HideCollumn()
     With Columns(5).EntireColumn
        .Hidden = Not (.Hidden)
    end with
End Sub
По вопросам из тем форума, личку не читаю.
 
А зачем здесь вообще EntireColumn? И скобки не нужны :)
 
Цитата
KoguarLTE написал:
у меня там целая куча листов, только на определенных по условию нужно скрывать столбики, ну это я умею, а вот назад как вернуть...
Почему Вы не хотите использовать Штатный Режим: Вид (Представления)?
Никаких Заморочек с макросами...  ;)  
 
Цитата
Юрий М написал:
А зачем здесь вообще EntireColumn?
Так нагляднее, а то вдруг скрыли не весь столбец :-)
Ну масло масляное конечно получилось.
Либо Cells(1,5).EntireColumn, либо Columns(5)
По вопросам из тем форума, личку не читаю.
 
БМВ, а не подскажите, где бы почитать про With? Не про сам оператор. Что делает  - знаю, хелп только что перечитал. Много раз видел, что эту конструкцию активно используют, когда нужно поменять несколько атрибутов одного объекта, а для чего использовать with тут?
Я не волшебник, я только учусь.
 
Wiss,  Объект один, но его вызов производится дважды.
.Hidden = Not (.Hidden)
Это не только краткость.
По вопросам из тем форума, личку не читаю.
 
Цитата
БМВ написал:
Объект один, но его вызов производится дважды.
Хм... спасибо. Учту на будущее. Видимо, я просто никогда не работал с большими объектами. Постараюсь писать менее ресурсоёмко, но вместо Integer всё-равно буду использовать Long  :D  
Я не волшебник, я только учусь.
Страницы: 1
Наверх