Профессиональные приемы работы в Microsoft Excel

Пожалуйста, войдите или зарегистрируйтесь.


Расширенный поиск  

Новости:

Теперь на форум можно залогиниться / зарегистрироваться с помощью ВКонтакте. Уже существующие пользователи могут связать свою учетную запись с аккаунтом ВКонтакте одним кликом в профиле пользователя http://forum.msexcel.ru/index.php?action=profile;area=account

Автор Тема: Гиперссылка плюс фильтр: два в одном.  (Прочитано 3351 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Лена21

  • Новичок
  • *
  • Уважение: +0/-0
  • Оффлайн Оффлайн
  • Сообщений: 3

Здравствуйте.

У меня не получается решить в MsExcel следующий вопрос:
 
чтобы при нажатии на гиперссылку переходило на определенный лист в этой же книге (это вроде легко, у меня получилось) и главное - чтобы отображались не все строчки, а только отфильтрованные по определенному условию (например,  столбец А = "Магазин1").

Можно ли организовать такой переход, используя только функцию "Гиперссылка" (либо другие функции), или же нужно использовать макросы?

Спасибо.

P.S. Извините за тупое название темы. Это первое, что пришло в голову.
Записан

Шпец Докапыч

  • Ветеран
  • *****
  • Уважение: +189/-4
  • Оффлайн Оффлайн
  • Сообщений: 1 919
  • ОБЛАДАТЕЛЬ УНИКАЛЬНЫХ НАВЫКОВ!!! :)

Вот такой однострочный макрос решает задачу:
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
    ActiveSheet.Range("магазины").AutoFilter 1, Target.TextToDisplay
End Sub

Можно заморочиться без макросов и пользовательских функций, но тогда и данные в таблице по ссылке надо будет фильтровать (забирать из основной таблицы) формулами, т.к. фильтр и расширенный фильтр не обновляются автоматически.
Записан
Знания недостаточно, необходимо применение. Желания недостаточно, необходимо действие. (с) Брюс Ли

Лена21

  • Новичок
  • *
  • Уважение: +0/-0
  • Оффлайн Оффлайн
  • Сообщений: 3

Спасибо вам.
Это вроде то, что нужно. Намного удобнее, чем с присваивать макросы кнопкам.
И главный вопрос: как этот макрос перенести в свой документ?
Если простым копированием, то при запуске весь мой лист становится чистым.
Записан

Лена21

  • Новичок
  • *
  • Уважение: +0/-0
  • Оффлайн Оффлайн
  • Сообщений: 3

Кажется, получается!
Простым перенесением кусков своего документа в ваш!
Спасибо еще раз.
Записан

Шпец Докапыч

  • Ветеран
  • *****
  • Уважение: +189/-4
  • Оффлайн Оффлайн
  • Сообщений: 1 919
  • ОБЛАДАТЕЛЬ УНИКАЛЬНЫХ НАВЫКОВ!!! :)

Пожалуйста.
Макрос находится в модуле листа. Он вызывается по событию: переход по любой ссылке. Реакцию на другие события можно назначить, выбрав интересующее из списка доступных процедур (см. скрин).
Записан
Знания недостаточно, необходимо применение. Желания недостаточно, необходимо действие. (с) Брюс Ли

GRKRND

  • Новичок
  • *
  • Уважение: +0/-0
  • Оффлайн Оффлайн
  • Сообщений: 4

Дабы не создавать новую тему оживлю эту, потому что задача похожая.
1. Есть исходные данные - перечень транзакций, у каждой есть признаки "период", "статья", "сумма". В примере они на листе "data"
2. Есть свод, который формируется по периодам и статьям, то есть суммирует все значения "сумма" для каждой пары "период"-"статья". В примере они на листе "total".

Собственно дальше задача: каждое значение на листе "total" должно быть гиперссылкой, нажатие на которую перебрасывает на лист "data" и применяет фильтр оставляя только те транзакции, которые сформировали значение (с которого совершен переход).

По сравнению с ранее предложенным решением разница в том, что фильтр должен быть применен не по содержимому текста гиперссылки, которое является динамическим, а по адресу ячейки, с которой совершается перевод. Для целей фильтрации на листе "data" добавлен столбец который определяет, в какую ячейку попадет каждая из транзакций.
Собственно интуиция мне подсказывает, что надо менять куски "ByVal Target As Hyperlink" и/или "Target.TextToDisplay", но на что их менять я не соображу.
Записан

Serge 007

  • Администратор
  • Ветеран
  • *****
  • Уважение: +340/-0
  • Оффлайн Оффлайн
  • Сообщений: 2 950
    • Мир Excel

...Дабы не создавать новую тему...
Зачем Вы вредите форуму, крадя у него его единственное предназначение - новые темы?

..потому что задача похожая...
"Похожая" не значит "такая же", а следовательно - вопрос задавать надо в новой теме, потому что это новый вопрос
Записан
Бесплатная помощь: www.excelworld.ru
Платная помощь: sergeyizotov@excelworld.ru
Яндекс-деньги: 41001419691823 | WMR:126292472390
 



Темы без ответов

30.09.2018 10:24 Расчет процентов за определенный период (месяц) с учетом изменений и платежей 452
03.03.2018 00:00 Подсчет отработанного времени, за исключением заранее определенных перерывов 1242
14.02.2018 10:11 Подготовить читабельную отчетность по платежам 1248
23.01.2018 13:46 Найти вероятность повторной покупки 1129
12.01.2018 23:56 Сделать отчет на Power BI (Dashboard) 1590
06.09.2017 10:43 Solver VBA не решает гиперболическое уравнение, но при этом решает гармоническое 1400
17.08.2017 12:15 Гиперссылка и фильтр одновременно макрос 1790
23.05.2017 11:20 Копирование данных из одной таблицы в умную таблицу по условию 3572
15.03.2017 15:45 автозамена картинок PowerPoint 2028
11.03.2017 13:43 Изменить нумерацию страниц 2153





Яндекс цитирования msexcel.ru Яндекс.Метрика

Страница сгенерирована за 0.217 секунд. Запросов: 110.