Новости:

К первому сообщению темы должен быть прикреплен файл примера в формате xls*.
Приложив пример, Вы избавите себя и других от вопросов типа "А какой критерий?", "А куда выводить результат?", "А сколько строк?" и все тех же просьб выложить файл. Рисовать за Вас Ваши же таблички с заданиями, а затем и решение к ним, никто желанием не горит. Да и, как показывает практика, в большинстве случаев без файла решения не найти.

Главное меню

Гиперссылка, обновляющая фильтр на основании адреса ячейки

Автор GRKRND, 03.08.2016, 11:02

« назад - далее »

GRKRND

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

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

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

Таким образом необходим макрос Private Sub Worksheet_FollowHyperlink, который перебрасывает на диапазон "переброска" и применяет фильтр по этому столбцу, в качестве параметра для фильтра - адрес ячейки из которой совершен переход.

vikttur

У Вас на гласные лимит? Произнесите свой ник вслух. Удобно?
Чем проще произношение, тем больше помощников.

GRKRND

Цитата: vikttur от 03.08.2016, 11:33
У Вас на гласные лимит? Произнесите свой ник вслух. Удобно?
Чем проще произношение, тем больше помощников.
Вслух произносится как любая аббревиатура, по буквам. ГэЭрКаЭрЭнДэ. Произносить вслух ничем не сложнее и не дольше, чем широкораспространенные ники типа Johny2349 (Джони Два Три Четыре Девять или Джони Две тысячи Триста Сорок Девять).
Я уже не спрашиваю, зачем ПРОИЗНОСИТЬ ник на форуме, где общение происходит в текстовом режиме, а ответ происходит путем нажатия на кнопку "цитировать", которая вставляет ник вне зависимости от сложности его произнощения.
Нецензурным мой ник не является.  В правилах форума нигде не указано что ник должен быть легко произносимым. Иначе бы я, конечно, учел бы это при регистрации. Если я что-то упустил, я могу попросить модератора удалить тему, я зарегистрируюсь под произносимым ником и создам тему повторно. Но я хотел бы избежать этих сложностей. Я для себя за долгое время пользования этим форумом в режиме гостя представлял его как некую базу знаний, содержащую готовые решения нетипичных задач в excel. Которая в идеале, по-моему, вообще может быть обезличена: есть вопрос, есть ответ, остальное - избыточная информация.
Если кому-то это важно, меня зовут Игорь, все еще надеюсь получить ответ на свой вопрос.

cheshiki1

проверяйте
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim cr1$, cr2$

If Target.Cells.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("B2:C3")) Is Nothing Then
   cr1 = Cells(Target.Row, 1): cr2 = Cells(1, Target.Column)

   Sheets("data").Range("$A$1:$E$31").AutoFilter
    Sheets("data").Range("$A$1:$E$31").AutoFilter Field:=3, Criteria1:=cr1
   Sheets("data").Range("$A$1:$E$31").AutoFilter Field:=2, Criteria1:=cr2
End If
End Sub
в модуль листа "total"

Serge 007

Цитата: vikttur от 03.08.2016, 11:33У Вас на гласные лимит? Произнесите свой ник вслух. Удобно?
Виктор, какая разница, какой ник? Мы же не на планете :)

Цитата: GRKRND от 03.08.2016, 12:14...ответ происходит путем нажатия на кнопку "цитировать"...
Игорь, кнопка "Цитировать" для цитат, а для ответов есть кнопка "Ответ".
Используйте их по назначению
Бесплатная помощь: www.excelworld.ru
Платная помощь: sergeyizotov@excelworld.ru
Ю-money: 41001419691823 | WMR:126292472390

vikttur

Цитироватькакая разница, какой ник?
Я не настаивал, только совет.

GRKRND

Цитата: cheshiki1 от 03.08.2016, 13:34
проверяйте
Спасибо, работает. Буду переносить на свою реальную задачу.

Andrey77

Добрый день.
у меня 3 критерия, а не 2 как в примере выше. Как мне добавить новый критетий, или нужно писать скрипт заново?