Как обновить файл в Excel?

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

Как обновить файл в Excel?

Обновление данных в сводной таблице

Вы можете в любой момент нажать кнопку Обновить, чтобы обновить данные в сводных таблицах в книге. Можно обновлять значения в сводных таблицах, подключенных к внешним данным, таким как базы данных (SQL Server, Oracle, Access и другие), куб служб Analysis Services, веб-каналы данных и многие другие источники. Вы также можете обновлять данные из исходной таблицы в той же или другой книге. Кроме того, можно настроить автоматическое обновление данных сводной таблицы при открытии книги.

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

Обновление вручную

Щелкните любое место сводной таблицы. На ленте появится вкладка Работа со сводными таблицами.

На вкладке Анализ выберите команду Обновить или нажмите ALT+F5.

Совет: Чтобы одновременно обновить все стебли в книге, нажмите кнопку Анализ > Обновить все.

Если таблица обновляется слишком долго, на вкладке Анализ нажмите стрелку рядом с кнопкой Обновить и выберите пункт Состояние обновления. Так вы сможете проверить состояние обновления.

Чтобы отменить обновление, нажмите Отменить обновление.

Блокировка изменения ширины столбцов и форматирования ячеек

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

На вкладке Анализ нажмите кнопку Параметры.

На вкладке Макет и формат установите флажки Автоматически изменять ширину столбцов при обновлении и Сохранять форматирование ячеек при обновлении.

Автоматическое обновление данных при открытии книги

Щелкните любое место сводной таблицы. На ленте появится вкладка Работа со сводными таблицами.

На вкладке Анализ нажмите кнопку Параметры.

На вкладке Данные проверьте поле Обновлять данные при открытии файла.

Обновление вручную

Щелкните в любом месте сводной таблицы.

Отобразит вкладку «Параметры» и «Конструктор» в области «Инструменты для работы со таблицами».

На вкладке Параметры в группе Данные сделайте следующее:

Чтобы обновить данные в соответствие с источником данных, нажмите кнопку Обновить или нажмите клавиши ALT+F5.

Вы также можете щелкнуть правой кнопкой мыши и нажать кнопку Обновить.

Чтобы обновить все стебли в книге, нажмите кнопку Обновить и выберите обновить все.

Если обновление занимает больше времени, чем вы ожидаете, щелкните Параметры > обновить > Состояние обновления, чтобы проверить состояние обновления.

Чтобы отменить обновление, нажмите Отменить обновление.

Блокировка изменения ширины столбцов и форматирования ячеек

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

Щелкните Параметры > параметры.

На вкладке Макет и формат установите флажки Автоматически изменять ширину столбцов при обновлении и Сохранять форматирование ячеек при обновлении.

Автоматическое обновление данных в pivottable при открытии книги

Щелкните в любом месте сводной таблицы.

На вкладке Параметры в группе Сводная таблица нажмите кнопку Параметры.

В диалоговом окне Параметры таблицы на вкладке Данные выберите параметр Обновлять данные при открытии файла.

При добавлении новых данных в источник необходимо обновить все основанные на нем сводные таблицы. Чтобы обновить сводную таблицу, можно щелкнуть правой кнопкой мыши в любом месте ее диапазона и выбрать команду Обновить

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

Обновление данных в сводных таблицах Excel

Большой диапазон данных в таблице Excel рационально представить в виде сводного отчета. Структура данного инструмента позволяет получить быстрый доступ к итогам, информации по определенному параметру. Рассмотрим создание и обновление сводных таблиц.

О целесообразности и возможности сводных таблиц

Оптимально формировать сводный отчет на основе исходной таблицы, если она отвечает следующим параметрам:

  • содержится несколько сотен строк;
  • пользователю нужно представлять одни и те же данные в разных разрезах, выбирать информацию по заданному условию, группировать, а встроенный фильтр и группировка справляются плохо.

Требования к исходной таблице:

  • у каждого столбца есть заголовок (первый вариант – неправильный; второй – правильный);
  • значения в одном столбце имеют одинаковый формат (число, дата, текст);
  • все ячейки в строках и столбцах заполнены значениями;
  • данные из одной ячейки нельзя разнести в разные столбцы (без объединения ячеек).

Нерациональная организация информации:

Нельзя будет вывести итоги, например, только по городу.

Лучше значения ввести следующим таким образом.

Как сделать сводную таблицу в Excel

Чтобы создать сводную таблицу в качестве исходного диапазона возьмем каталог учебной литературы:

Подразумевается, что данная таблица состоит из сотен строк. Создадим сводный отчет для выведения списка книг из конкретной категории или определенного года. Задача сформулирована – перейдем к реализации.

  1. Активизируем любую ячейку в исходном диапазоне – щелкаем мышкой. Переходим на вкладку «Вставка» — «Таблица». Нажимаем кнопку «Сводная таблица».
  2. Автоматически выделяется весь диапазон. Открывается диалоговое окно инструмента. Необходимо проверить правильность параметров для отчета (диапазон, куда выводить сводную таблицу).
  3. Открывается окно для построения отчета, список полей. В правой нижней части страницы – области для размещения данных из исходного диапазона.
  4. Области позволяют сформировать структуру сводного отчета.
  5. Сначала заполним «Названия строк». Так как нужно вывести список книг по годам, то в этом разделе должен быть перечень названий книг. В списке полей ставим птичку напротив поля «Название». Данные столбца имеют текстовый формат – автоматически попадают в область «Названия строк». К значениям сразу применяется сортировка по алфавиту.
  6. Теперь ставим птичку напротив поля «Год выпуска».

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

Как обновить сводную таблицу в Excel

От сводной таблицы больше пользы, если она динамическая. То есть при внесении новых данных в исходный диапазон поля отчета можно обновить. Как это сделать?

  1. Когда данные внесены в исходную таблицу, переходим на лист со сводным отчетом и щелкаем в любом его месте правой кнопкой мыши. В открывшемся меню выбираем «Обновить».
  2. Активизируем нужное поле сводного отчета – становится доступен инструмент «Работа со сводными таблицами». Открываем вкладку «Параметры». В группе «Данные» нажимаем кнопку «Обновить».
  3. Выделить сводную таблицу или отдельное поле, нажать сочетание клавиш Alt + F5.

Как настроить автоматическое обновление сводной таблицы в Excel:

  1. Открыть лист со сводным отчетом. Щелкнуть в любом месте таблицы левой кнопкой мыши. Это нужно для того, чтобы активизировалась «Работа со сводными таблицами».
  2. На вкладке «Параметры» находим группу «Сводная таблица». Нажимаем – открывается меню кнопки. Выбираем пункт «Параметры».
  3. В открывшемся меню «Параметры сводной таблицы» нажать кнопку «Разметка и формат». Поставить галочки напротив следующих пунктов:

Закрыть окно, нажав кнопку ОК.

Еще один вариант:

  1. Открыть лист со сводным отчетом. На вкладке «Разработчик» нажать кнопку «Запись макроса».
  2. Выполнить вручную обновление сводной таблицы – остановить запись. Нажать на кнопку «Макросы». Выбрать из доступных макросов записанный – «выполнить».
Читайте также  Как открыть файл через браузер Android?

Теперь сводный отчет при открытии будет обновляться программно.

Обновление Microsoft Excel на компьютере

Программа Microsoft Excel предоставляет пользователям необходимые инструменты и функции для работы с электронными таблицами. Ее возможности постоянно расширяются, исправляются различные ошибки и корректируются присутствующие элементы. Для нормального взаимодействия с софтом его следует периодически обновлять. В разных версиях Экселя этот процесс немного отличается.

Обновление актуальных версий Excel

На данный момент поддерживается версия 2010 и все последующие, поэтому для них регулярно выпускаются исправления и нововведения. Хоть Excel 2007 и не поддерживается, для него также доступны обновления. Процесс их установки описан во второй части нашей статьи. Поиск и инсталляция во всех актуальных сборках, кроме 2010 осуществляется одинаково. Если же вы обладатель упомянутой версии, вам нужно перейти ко вкладке «Файл», открыть раздел «Справка» и нажать на «Проверить наличие обновлений». Далее просто следуйте инструкциям, отобразившимся на экране.

Пользователям последующих версий следует ознакомиться с инструкцией по ссылке ниже. Там подробно расписан процесс инсталляций нововведений и исправлений для свежих сборок Microsoft Office.

Отдельное руководство есть и для обладателей Excel 2016. Для него в прошлом году было выпущено значимое обновление, корректирующее многие параметры. Инсталляция его не всегда производится автоматически, поэтому компания Microsoft предлагает сделать это вручную.

  1. Перейдите на страницу загрузок компонентов по ссылке выше.
  2. Опуститесь вниз страницы в раздел «Центр загрузки». Нажмите на необходимую ссылку, где в названии присутствует разрядность вашей операционной системы.

Выберите подходящий язык и нажмите на «Скачать».

Подтвердите лицензионное соглашение и ожидайте окончания установки обновлений.

Обновляем Microsoft Excel 2007 на компьютере

За все время существования рассматриваемого ПО вышло несколько его версий и для них было выпущено множество различных обновлений. Сейчас поддержка Excel 2007 и 2003 прекратилась, поскольку акцент был сделан на разработку и совершенствование более актуальных компонентов. Однако если для 2003 не найти никаких обновлений, то с 2007 дела обстоят немного по-другому.

Способ 1: Обновление через интерфейс программы

Данный метод все еще нормально функционирует в операционной системе Windows 7, но последующих версиях им пользоваться нельзя. Если же вы обладатель упомянутой выше ОС и хотите загрузить обновление к Excel 2007, сделать это можно так:

    Слева вверху окна находится кнопка «Меню». Нажмите ее и перейдите в «Параметры Excel».

В разделе «Ресурсы» выберите пункт «Проверить наличие обновлений».

  • Дождитесь окончания сканирования и инсталляции, если это требуется.
  • Если перед вами отобразилось окно с просьбой воспользоваться «Центром обновления Windows», обратитесь к статьям по ссылкам ниже. В них предоставлены инструкции на тему запуска службы и ручной установки компонентов. Вместе со всеми остальными данными на ПК инсталлируются и файлы к Экселю.

    Способ 2: Ручная загрузка исправлений

    Компания Microsoft на своем официальном сайте выкладывает файлы загрузок, чтобы при необходимости пользователь мог скачать их и установить вручную. За время поддержки работы Excel 2007 было выпущено одно крупное обновление, исправляющее некоторые ошибки и оптимизирующее программу. Поставить его на ПК можно следующим образом:

    1. Перейдите на страницу скачивания компонента по ссылке выше.
    2. Выберите подходящий язык.

    Кликните на соответствующую кнопку для начала загрузки.

    Откройте автоматический инсталлятор.

    Ознакомьтесь с лицензионным соглашением, подтвердите его и нажмите на «Продолжить».

    Подождите, пока закончится обнаружение и установка.

    Теперь вы можете запустить софт для работы с электронными таблицами.

    Выше мы постарались максимально развернуто рассказать про обновления программы Microsoft Excel разных версий. Как видите, в этом нет ничего сложного, важно лишь выбрать подходящий метод и следовать приведенным инструкциям. Даже неопытный пользователь справится с поставленной задачей, поскольку для выполнения этого процесса не нужны дополнительные знания или навыки.

    Помимо этой статьи, на сайте еще 12304 инструкций.
    Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.

    Отблагодарите автора, поделитесь статьей в социальных сетях.

    Как обновить файл в Excel?

    Нашёл в закромах — откуда взял, не записано.

    200?’200px’:»+(this.scrollHeight+5)+’px’);»> ==============================================================
    Применение макроса ко всем файлам из папки
    Папка = «полный путь папки»

    ‘———— Excel-файлы в этой папке ——————
    Имя = Dir(Папка & «*.xls*»)
    Do While Имя <> «»
    Workbooks.Open FileName:=Папка & Имя , UpdateLinks:=True
    ‘здесь Ваш макрос делает свое грязное дело
    ActiveWorkbook.Close SaveChanges:=True
    Имя = Dir
    Loop

    С доработкой вероятно так:
    [vba]

    200?’200px’:»+(this.scrollHeight+5)+’px’);»> Sub update()

    With Application ‘операции с приложением/отключаем для повышения скорости работы макроса
    .ScreenUpdating = False ‘обновление экрана
    .DisplayAlerts = False ‘вывод системных сообщений

    Папка = «полный путь папки»
    ‘———— Excel-файлы в этой папке ——————
    Имя = Dir(Папка & «*.xls*»)
    Do While Имя <> «»
    With .Workbooks.Open _
    (Filename:=Папка & Имя, UpdateLinks:=True)
    ‘здесь Ваш макрос делает свое грязное дело
    .Close SaveChanges:=True
    End With
    Имя = Dir
    Loop

    .ScreenUpdating = True ‘обновление экрана
    .DisplayAlerts = True ‘вывод системных сообщений
    End With
    End Sub

    Нашёл в закромах — откуда взял, не записано.

    200?’200px’:»+(this.scrollHeight+5)+’px’);»> ==============================================================
    Применение макроса ко всем файлам из папки
    Папка = «полный путь папки»

    ‘———— Excel-файлы в этой папке ——————
    Имя = Dir(Папка & «*.xls*»)
    Do While Имя <> «»
    Workbooks.Open FileName:=Папка & Имя , UpdateLinks:=True
    ‘здесь Ваш макрос делает свое грязное дело
    ActiveWorkbook.Close SaveChanges:=True
    Имя = Dir
    Loop

    С доработкой вероятно так:
    [vba]

    200?’200px’:»+(this.scrollHeight+5)+’px’);»> Sub update()

    With Application ‘операции с приложением/отключаем для повышения скорости работы макроса
    .ScreenUpdating = False ‘обновление экрана
    .DisplayAlerts = False ‘вывод системных сообщений

    Папка = «полный путь папки»
    ‘———— Excel-файлы в этой папке ——————
    Имя = Dir(Папка & «*.xls*»)
    Do While Имя <> «»
    With .Workbooks.Open _
    (Filename:=Папка & Имя, UpdateLinks:=True)
    ‘здесь Ваш макрос делает свое грязное дело
    .Close SaveChanges:=True
    End With
    Имя = Dir
    Loop

    .ScreenUpdating = True ‘обновление экрана
    .DisplayAlerts = True ‘вывод системных сообщений
    End With
    End Sub

    Сообщение Нашёл в закромах — откуда взял, не записано.

    200?’200px’:»+(this.scrollHeight+5)+’px’);»> ==============================================================
    Применение макроса ко всем файлам из папки
    Папка = «полный путь папки»

    ‘———— Excel-файлы в этой папке ——————
    Имя = Dir(Папка & «*.xls*»)
    Do While Имя <> «»
    Workbooks.Open FileName:=Папка & Имя , UpdateLinks:=True
    ‘здесь Ваш макрос делает свое грязное дело
    ActiveWorkbook.Close SaveChanges:=True
    Имя = Dir
    Loop

    С доработкой вероятно так:
    [vba]

    200?’200px’:»+(this.scrollHeight+5)+’px’);»> Sub update()

    With Application ‘операции с приложением/отключаем для повышения скорости работы макроса
    .ScreenUpdating = False ‘обновление экрана
    .DisplayAlerts = False ‘вывод системных сообщений

    Папка = «полный путь папки»
    ‘———— Excel-файлы в этой папке ——————
    Имя = Dir(Папка & «*.xls*»)
    Do While Имя <> «»
    With .Workbooks.Open _
    (Filename:=Папка & Имя, UpdateLinks:=True)
    ‘здесь Ваш макрос делает свое грязное дело
    .Close SaveChanges:=True
    End With
    Имя = Dir
    Loop

    .ScreenUpdating = True ‘обновление экрана
    .DisplayAlerts = True ‘вывод системных сообщений
    End With
    End Sub

    Как обновить файл в Excel?

    Как обновить сводную таблицу при изменении данных в Excel?

    Как вы знаете, если вы изменяете данные в исходной таблице, относительная сводная таблица не обновляет данные в ней в то же время. Если вам нужно обновить сводную таблицу при изменении данных в таблице в Excel, я могу рассказать вам несколько быстрых способов.

    • Повторное использование чего угодно: Добавляйте наиболее часто используемые или сложные формулы, диаграммы и все остальное в избранное и быстро используйте их в будущем.
    • Более 20 текстовых функций: Извлечь число из текстовой строки; Извлечь или удалить часть текстов; Преобразование чисел и валют в английские слова.
    • Инструменты слияния : Несколько книг и листов в одну; Объединить несколько ячеек / строк / столбцов без потери данных; Объедините повторяющиеся строки и сумму.
    • Разделить инструменты : Разделение данных на несколько листов в зависимости от ценности; Из одной книги в несколько файлов Excel, PDF или CSV; От одного столбца к нескольким столбцам.
    • Вставить пропуск Скрытые / отфильтрованные строки; Подсчет и сумма по цвету фона ; Отправляйте персонализированные электронные письма нескольким получателям массово.
    • Суперфильтр: Создавайте расширенные схемы фильтров и применяйте их к любым листам; Сортировать по неделям, дням, периодичности и др .; Фильтр жирным шрифтом, формулы, комментарий .
    • Более 300 мощных функций; Работает с Office 2007-2019 и 365; Поддерживает все языки; Простое развертывание на вашем предприятии или в организации.

    Обновите сводную таблицу на листе, нажав кнопку «Обновить»

    Удивительный! Использование эффективных вкладок в Excel, таких как Chrome, Firefox и Safari!
    Экономьте 50% своего времени и сокращайте тысячи щелчков мышью каждый день!

    В Excel есть функция «Обновить» и «Обновить все» для обновления сводной таблицы на одном листе.

    Щелкните сводную таблицу, данные которой нужно обновить, а затем щелкните Option (в Excel 2013 щелкните АНАЛИЗ)> обновление > обновление. Смотрите скриншот:

    Если вы хотите обновить все сводные таблицы на одном листе, вы можете выбрать Обновить все.

    Обновить сводную таблицу на листе или в книге с помощью VBA

    С помощью VBA вы можете не только обновлять все сводные таблицы на одном листе, но также можете обновлять все сводные таблицы во всей книге.

    1. Нажмите F11 + Alt вместе на клавиатуре, чтобы открыть Microsoft Visual Basic для приложений окно.

    2. Затем нажмите Вставить > Модуль чтобы вставить новое окно модуля. А затем скопируйте следующий код VBA в окно.

    VBA: обновить сводные таблицы на листе.

    3. Нажмите Выполнить кнопку в окне или клавишу F5 для запуска VBA, то сводные таблицы на листе обновляются.

    Чаевые: Чтобы обновить все сводные таблицы во всей книге, вы можете использовать следующий VBA.

    VBA: обновить все сводные таблицы в книге.

    Автообновляемая сводная таблица

    Многие, кто работал со сводными таблицами наверняка знают, что при изменении значений в исходных данных(данные, на основании которых создана сводная) сама сводная таблица при этом не обновляется. Чтобы обновить надо проделать еще пару манипуляций:

      Выделить любую ячейку сводной таблицы→Правая кнопка мыши→Обновить (Refresh) или вкладка Данные (Data) →Обновить все (Refresh all) →Обновить (Refresh)

    Однако, если в конец исходных данных добавить строку(или несколько), то с большой долей вероятности даже обновление сводной таблицы не поможет — добавленная строка не появится в сводной. И чтобы её увидеть необходимо будет изменить источник данных для сводной таблицы, включив новую строку в диапазон. Не очень удобно, не правда ли? Чтобы добиться расширения диапазона исходных данных автоматически вместе с добавлением туда данных, лучше позаботиться об этом до создания сводной таблицы.

    Недоавтообновление
    Почему «недо» — жать кнопку Обновить все же придется. Но не отчаивайтесь — читайте до конца и мы научимся обновлять все автоматом.
    Для счастливых обладателей Excel 2007 и старше есть простой способ без лишних телодвижений. Это встроенный инструмент Таблица (Table) . Его еще иначе называют «умная таблица» и я тоже буду применять этот термин, чтобы не было путаницы.
    Умная таблица — это специальный объект, который представляет собой правильную таблицу с заголовками, которая расширяется по мере добавления в неё данных. В ней много еще чего полезного, но нас интересует сейчас именно то, что она расширяется сама по мере добавления данных и что на её основе можно создать сводную таблицу. В нашем случае она будет играть роль динамического именованного диапазона(стандартный именованный диапазон не может быть источником данных для сводной таблицы, поэтому и приходится идти другими путями). Чтобы создать такую таблицу необходимо:

    • выделить таблицу исходных данных для создания сводной таблицы -перейти на вкладку Вставка (Insert) и выбрать Таблица (Table)
    • В появившемся окне согласиться с указанным диапазоном или выбрать свой. Галочку Таблица с заголовками (My table has headers) при этом надо обязательно оставить включенной:

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

      Если вдруг захочется и здесь навести красоту, то это тоже делается довольно легко:
      Выделяем любую ячейку в этой таблице-переходим на вкладку Работа с таблицами (Table tools)Конструктор (Desigh)Стили таблиц (Table styles) . Можно выбрать один из предлагаемых там вариантов и применить. Если ни один из вариантов не подходит — создаем свой. Раскрываем список стилей и выбираем Создать стиль таблицы (New table style. )

    А дальше все как привыкли:

    1. Выделить любую ячейку исходной таблицы(теперь уже «умной»)
    2. Вкладка Вставка (Insert) -группа Таблица (Table) -Сводная таблица (PivotTable)
    3. В диалоговом окне Создание сводной таблицы (Create PivotTable) в пункте Выбрать таблицу или диапазон (Select a table or range) в поле Таблица или диапазон (Range/Table) будет автоматически указан не адрес какого-то диапазона, а имя созданной умной таблицы:

      Далее надо определить место размещения Сводной таблицы:

    • На новый лист (New Worksheet)
    • На существующий лист (Existing Worksheet)
  • нажать OK
  • Готово. Теперь при добавлении строк в эту таблицу для их отображения в сводной достаточно будет лишь обновить сводную таблицу как привыкли. Правда, тут тоже есть нюанс — добавлять строки надо правильно. Можно вбить данные в любую ячейку первой пустой строки таблицы — таблица автоматом расшириться, добавив еще одну строку. Теперь туда можно скопировать нужные данные или добить вручную. Если надо вставить сразу несколько строк — в правом нижнем углу последней строки умной таблицы есть слегка выделяющийся уголочек, который надо ухватить мышью и растянуть на нужное кол-во строк/столбцов.
    Если мы просто скопируем строки ниже таблицы, то она не расширится. Это надо учитывать.

    Если необходимо настроить на авторасширение уже созданную сводную , то порядок почти такой же, только сводную таблицу создавать не надо. Преобразуем исходные данные в умную таблицу, переходим на лист со сводной таблицей. Выделяем любую ячейку в сводной таблице, переходим на динамическую вкладку Работа со сводными таблицами (PivotTable Tools)Параметры (Options) -группа кнопок Даныне (Data)Источник данных (Change data Source) . В появившемся окне в поле Таблица или диапазон (Table/Range) указываем либо ссылку на всю умную таблицу, либо имя нашей умной таблицы(если знаете где его подсмотреть). На что здесь следует обратить внимание: если указывался диапазон, то если он указан верно — в поле вместо адреса ячеек будет отображено имя умной таблицы:

    Если же после указания видите именно диапазон — значит что-то указано неверно или таблица не является умной(возможно, форматирование от умной таблицы, но сама умная таблица была удалена).

    Полное автообновление
    Для полного счастья можно подключить работу макросов. Что я хочу? Я хочу, чтобы как только я изменил/добавил данные в исходные данные — сводная тут же обновилась. Для этого надо сделать следующее:

    1. убеждаемся, что макросы разрешены(Почему не работает макрос?, Что такое макрос и где его искать?)
    2. перейти на лист исходных данных(в моем случае лист так и называется — Исходные данные)
    3. жмем на ярлычке этого листа правой кнопкой мыши —Исходный текст (View code) :
    4. вставляем туда следующий код:

    Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) ‘проверяем — изменения внутри умной таблицы или нет If Not Intersect(Target, Target.Parent.ListObjects(1).Range) Is Nothing Then ‘если внутри таблицы, то обновляем сводную таблицу на листе «Автообновляемая сводная» Sheets(«Автообновляемая сводная»).PivotTables(1).RefreshTable ‘для всех сводных на листе ‘ Dim pt As PivotTable ‘ For Each pt In Sheets(«Автообновляемая сводная»).PivotTables ‘ pt.RefreshTable ‘ Next End If End Sub

    Все, теперь при любом изменении внутри исходных данных(будь это добавление/удаление строк или просто изменение значений внутри таблицы) сводная таблица обновиться без занудных действий вроде выделения сводной и жмахания кнопки Обновить.
    Пара важных комментариев к коду:

    • Sheets(«Автообновляемая сводная») — здесь Автообновляемая сводная это имя листа, на котором расположена сводная таблица. Это очень важно. Если будет указано неверное имя листа — код выдаст ошибку и никакого обновления, конечно же, не произойдет
    • код сделан таким образом, что на листе исходных данных должна быть только одна умная таблица. Нет, их может быть несколько, но код будет ориентироваться исключительно на первую. И если вы плохо знакомы с принципами создания объектов — то лучше не рисковать. Хотя и здесь можно выйти из положения. Если вы знаете имя своей умной таблицы(его можно подсмотреть на вкладке Конструктор -группа Свойства), то можно изменить код так:
      вместо строки
      If Not Intersect(Target, Target.Parent.ListObjects( 1 ).Range) Is Nothing Then
      записать такую
      If Not Intersect(Target, Target.Parent.ListObjects( «Таблица1» ).Range) Is Nothing Then
      где Таблица1 — имя вашей умной таблицы, на основании которой создана сводная.
    • тот же нюанс с листом самой сводной — код ориентирован так, что обновляет только первую сводную на листе Автообновляемая сводная . Здесь так же можно заменить цифру 1 на имя сводной(например .PivotTables(«СводнаяТаблица1»).RefreshTable ), либо же сделать обновление всех сводных. Для этого надо раскомментировать блок ‘для всех сводных на листе (убрать апострофы перед строками) и убрать строку с именем листа, чтобы получилось так:

    Private Sub Worksheet_Change(ByVal Target As Range) ‘проверяем — изменения внутри умной таблицы или нет If Not Intersect(Target, Target.Parent.ListObjects(1).Range) Is Nothing Then ‘если внутри таблицы, то обновляем все сводные на листе «Автообновляемая сводная» Dim pt As PivotTable For Each pt In Sheets(«Автообновляемая сводная»).PivotTables pt.RefreshTable Next End If End Sub

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

    P.S. Так же можно использовать и иной подход — вставить в модуль листа Автообновляемая сводная такой код:

    Private Sub Worksheet_Activate() Me.PivotTables(1).RefreshTable End Sub

    тогда сводная на листе будет обновляться лишь тогда, когда будет активирован лист со сводной. Плюсы подобного подхода очевидны в случаях, если часто приходится менять исходные данные. В первом коде сводная будет обновляться при каждом ручном изменении в исходных данных, даже если после этого мы не переходили на лист сводной, а дальше стали делать изменения в исходных данных.

    Скачать файл с автообновляемой сводной таблицей:

    Tips_PT_AutoRefreshPT.xlsm (46,5 KiB, 2 419 скачиваний)

    Статья помогла? Поделись ссылкой с друзьями!

    Борис Аладышкин/ автор статьи

    Приветствую! Я являюсь руководителем данного проекта и занимаюсь его наполнением. Здесь я стараюсь собирать и публиковать максимально полный и интересный контент на темы связанные с современными технологиями и программным обеспечением. Уверен вы найдете для себя немало полезной информации. С уважением, Борис Аладышкин.

    Понравилась статья? Поделиться с друзьями:
    Itsovet61.ru
    Добавить комментарий

    ;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: