Перейти к содержимому

Как связать фильтр сводной таблицы с определенной ячейкой в Excel?

Author: Siluvia Last Modified: 2025-06-05

Если вы хотите связать фильтр сводной таблицы с определенной ячейкой и настроить фильтрацию сводной таблицы на основе значения этой ячейки, метод, описанный в этой статье, может вам помочь.

Связывание фильтра сводной таблицы с определенной ячейкой с помощью кода VBA


Связывание фильтра сводной таблицы с определенной ячейкой с помощью кода VBA

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

Возьмем для примера следующую сводную таблицу: поле фильтра в сводной таблице называется Категория, и оно включает два значения «Расходы» и «Продажи». После связывания фильтра сводной таблицы с ячейкой, значениями ячеек, которые вы будете использовать для фильтрации сводной таблицы, должны быть «Расходы» и «Продажи».

link Pivot Table filter to a certain cell

1. Пожалуйста, выберите ячейку (здесь я выбираю ячейку H6), которую вы хотите связать с функцией фильтра сводной таблицы, и заранее введите одно из значений фильтра в эту ячейку.

2. Откройте рабочий лист, содержащий сводную таблицу, которую вы хотите связать с ячейкой. Щелкните правой кнопкой мыши по вкладке листа и выберите Вид кода в контекстном меню. См. скриншот:

Right click the sheet tab and select View Code

3. В окне Microsoft Visual Basic for Applications скопируйте следующий код VBA в окно Кода.

Код VBA: Связывание фильтра сводной таблицы с определенной ячейкой

Private Sub Worksheet_Change(ByVal Target As Range)
'Update by Extendoffice 20180702
    Dim xPTable As PivotTable
    Dim xPFile As PivotField
    Dim xStr As String
    On Error Resume Next
    If Intersect(Target, Range("H6")) Is Nothing Then Exit Sub
    Application.ScreenUpdating = False
    Set xPTable = Worksheets("Sheet1").PivotTables("PivotTable2")
    Set xPFile = xPTable.PivotFields("Category")
    xStr = Target.Text
    xPFile.ClearAllFilters
    xPFile.CurrentPage = xStr
    Application.ScreenUpdating = True
End Sub

Примечания:

1) «Лист1» — это имя открытого рабочего листа.
2) «СводнаяТаблица2» — это имя сводной таблицы, к которой вы хотите привязать функцию фильтрации к ячейке.
3) Поле фильтрации в сводной таблице называется «Категория».
4) Ссылочная ячейка — H6. Вы можете изменить эти переменные значения в зависимости от ваших потребностей.

4. Нажмите клавиши Alt + Q, чтобы закрыть окно Microsoft Visual Basic for Applications.

Теперь функция фильтрации сводной таблицы связана с ячейкой H6.

Обновите ячейку H6, затем соответствующие данные в сводной таблице будут отфильтрованы на основе существующего значения. См. скриншот:

Refresh the cell, then corresponding data are filtered out based on the existing value

При изменении значения ячейки, отфильтрованные данные в сводной таблице будут автоматически изменены. См. скриншот:

When changing the cell value, the filtered data in the Pivot Table will be changed automatically.

a screenshot of kutools for excel ai

Раскройте магию Excel с Kutools AI

  • Умное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это посредством простых команд.
  • Пользовательские формулы: Создавайте индивидуальные формулы для оптимизации ваших рабочих процессов.
  • Кодирование VBA: Пишите и внедряйте код VBA без особых усилий.
  • Интерпретация формул: Легко разбирайтесь в сложных формулах.
  • Перевод текста: Преодолейте языковые барьеры в ваших таблицах.
Улучшите возможности Excel с помощью инструментов на базе ИИ. Скачать сейчас и испытайте беспрецедентную эффективность!

Связанные статьи:

Лучшие инструменты для повышения продуктивности работы с Office

🤖 Kutools AI Aide: Совершенно новый подход к анализу данных на основе: Интеллектуальное выполнение |  Генерация кода  |  Создание пользовательских формул |  Анализ данных и построение диаграмм  |  Вызов Расширенных функций Kutools
Популярные функции: Найти, выделить или отметить дубликаты | Удалить пустые строки | Объединить столбцы или ячейки без потери данных |   Округлить без формулы ...
Супер ПОИСК: VLOOKUP по нескольким критериям | VLOOKUP с несколькими значениями | Многолистовой поиск | Распознавание нечетких соответствий ....
Расширенный раскрывающийся список: Быстро создать раскрывающийся список | Зависимый раскрывающийся список | Множественный выбор в раскрывающемся списке ....
Менеджер столбцов: Добавить определённое количество столбцов | Переместить столбцы | Переключить видимость скрытых столбцов | Сравнить диапазоны и столбцы ...
Избранные функции: Сетка фокусировки | Дизайн листа | Улучшенная строка формулы | Управление книгами и листами | Библиотека автотекста | Выбор даты | Объединить данные | Шифрование/расшифровка ячеек | Отправить письмо по списку | Супер фильтр | Специальный фильтр (фильтр ячеек с жирным/курсивом/зачёркнутым...) ...
Топ-15 наборов инструментов:12 текстовых инструментов (Добавить текст, Удалить определенные символы, ...) |50+ типов диаграмм (Диаграмма Ганта, ...) |40+ практических формул (Расчет возраста на основе даты рождения, ...) |19 инструментов вставки (Вставить QR-код, Вставить изображение по пути, ...) |12 инструментов преобразования (Преобразовать в слова, Конвертация валюты, ...) |7 инструментов для объединения и разделения (Расширенное объединение строк, Разделить ячейки, ...) | ... и многое другое

Ускорьте работу в Excel с Kutools для Excel и ощутите новую степень эффективности. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени. Нажмите здесь, чтобы выбрать нужную вам функцию...


Office Tab добавляет вкладки в Office и делает вашу работу намного проще

  • Включите редактирование и чтение с вкладками в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна, а не в отдельных окнах.
  • Увеличьте свою продуктивность на50% и сократите сотни лишних кликов мышью каждый день!