В прикреплённом файле - 3 варианта реализации:
Для каждого из вариантов использованы свои макросы, скрывающие и отображающие строки В третьем варианте для скрытия строк применён автофильтр.
|
|||||||
|
Макросы в Excel Разработка макросов VBA на заказ. Нерешаемых задач в Excel нет! |
|
|
|
|
||||||||||||||||||||||||||||||||
|
|
|
Комментарии
Спасибо, попробуем прикрутить
Да тут нужен гораздо более простой макрос.
Вчера такой делал - код скрывает столбце при двойном щелчке на ячейке:
programmersforum.ru/showpost.php?p=860687&postcount=2
Благодарю за быстрый ответ. Дело в том что имеется таблица с большим кол-вом столбцов, которые необходимо скрывать перед печатью. Было бы удобно чтобы макрос скрывал столбцы если над ними поставить например галочку или определенный набор символов. Если на основе данного макроса это выполнить невозможно, будем дальше шерстить инет.
Смотря какой из трех вариантов вас интересует...
Автофильтр, к примеру, для скрытия столбцов не подойдёт.
Надо переделывать код - а что именно вам надо, я не знаю.
Обратитесь на форумы по Excel, прикрепите пример своего файла, - и вам обязательно помогут изменить код под ваши нужды.
Отличная вещь. А подскажите как сделать чтобы вместо строк скрывались столбцы?
Благодарю, все заработало!
Просто измените в макросе критерий автофильтра - тогда макрос будет скрывать отмеченные строки:
On Error Resume Next
[a1:c1000].AutoFilter Field:=2, Criteria1:=""
End Sub
Подскажите пожалуйста, как в третьем варианте сделать скрытие ОТМЕЧЕННЫХ строк, а не скрытие неотмеченных.
Понял, искренне вам благодарен за оказанную помощь.
Для "умных таблиц" надо немножно изменить код - применять автофильтр не к листу, а к таблице:
Пример для третьего варианта, который без использования Checkbox (галочки ставятся макросом с использованием шрифта Marlett)
ActiveSheet.ListObjects(1).Range.AutoFilter
End Sub
Sub СкрытьНеотмеченные3()
On Error Resume Next
ActiveSheet.ListObjects(1).Range.AutoFilter Field:=2, Criteria1:="<>"
End Sub
Благодарю вас за макрос, Игорь. Отличное решение! В Excel 2007, по всей видимости, этот макрос не работает в "умных" таблицах. Есть ли какое-то решение? Хочется оставить и "умную" таблицу и пользоваться этими замечательными кнопками.
Спасибо большое, чувствую что все просто должно быть, но сам допереть не смог )))
За макрос спасибо, просто, гениально и работает.
В третьем варианте "галочка" и есть ни что иное, как самая обычная буква a, только набранная шрифтом Marlett.
Смените шрифт в столбце - и галочки превратятся в буквы.
Касательно третьего варианта, поясните пож-та каким образом "а" заменяется на галочку?
Отправить комментарий