Повторное вычисление формул в Power Pivot

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

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

Сведения об обновлении данных и пересчете

Power Pivot использует как обновление данных, так и пересчет:

Обновление данных означает получение обновленных данных из внешних источников. Power Pivot не обнаруживает изменения во внешних источниках данных автоматически, но данные можно обновлять вручную в окне Power Pivot или автоматически, если доступ к книге SharePoint.

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

Важно:  Не следует сохранять или публиковать книгу, пока не будут пересчитаны формулы в ней.

Пересчет вручную и автоматически

По умолчанию Power Pivot пересчитыются по мере оптимизации времени, необходимого для обработки. Хотя пересчет может занять время, это важная задача, так как во время пересчета проверяется зависимость столбцов и вы будете уведомлены об изменениях столбцов, недопустимых данных или ошибках в формуле, которая используется для работы. Однако вы можете выбрать, следует ли отобирать проверку и обновлять вычисления вручную, особенно если вы работаете со сложными формулами или очень большими наборами данных и хотите управлять временем обновления.

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

Использование автоматического пересчета

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

  • Значения из внешнего источника данных обновлены.

  • Определение формулы изменилось.

  • Имена таблиц или столбцов, на которые ссылается формула, изменены.

  • Связи между таблицами были добавлены, изменены или удалены.

  • Добавлены новые меры или вычисляемые столбцы.

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

  • Строки были вставлены или удалены.

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

Пересчет вручную

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

  • Вы создаете формулу с помощью шаблона и хотите изменить имена столбцов и таблиц, используемых в формуле, перед проверкой.

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

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

Обратите внимание на то, что если в книге установлен режим ручного вычисления, Power Pivot в Microsoft Excel 2013 не выполняет проверку и проверку формул, что дает следующие результаты:

  • Все новые формулы, добавленные в книгу, будут помечены как содержащие ошибку.

  • В новых вычисляемом столбце результаты не будут отображаться.

Настройка книги для пересчета вручную

  1. В Power Pivotвыберите Конструктор> вычисления >Параметры вычислений> режиме ручного вычисления.

  2. Чтобы пересчитать все таблицы, нажмите кнопку Параметры вычислений> вычислить.

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

Важно:  Перед публикацией книги всегда следует снова изменить режим вычислений на автоматический. Это поможет избежать проблем при разработке формул.

Устранение неполадок пересчета

Зависимости

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

Предположим, например, что у вас есть таблица "Продажи", связанная с таблицами ,Product и ProductCategory; и формулы в таблице "Продажи" зависят от обеих таблиц. Любое изменение таблиц Product или ProductCategory приведет к повторному пересчету всех вычисляемых столбцов в таблице Sales. Это имеет смысл, если вы считаете, что у вас могут быть формулы для скатывания продаж по категориям или продуктам. Следовательно, чтобы убедиться в правильности результатов; формулы, основанные на данных, должны быть пересчитаны.

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

В некоторых случаях Power Pivot может определить, что столбцы можно исключить из пересчета. Например, если у вас есть формула, которая ищет значение [Цвет товара] из таблицы "Товары" и измененный столбец имеет значение [Количество] в таблице "Продажи", пересчитывать формулу не нужно, даже если таблицы "Продажи" и "Товары" связаны. Однако если у вас есть формулы, которые зависят от sales[Quantity],пересчет является требуемой.

Последовательность пересчета для зависимых столбцов

Зависимости вычисляются до пересчета. Если есть несколько столбцов, которые зависят друг от друга, Power Pivot следует за последовательностью зависимостей. Это гарантирует, что столбцы обрабатываются в правильном порядке с максимальной скоростью.

Операций

Операции, пересчитыв или обновляя данные, принимаются в качестве транзакции. Это означает, что в случае сбой какой-либо части обновления остальные операции откатываются. Это необходимо для того, чтобы обеспечить неавную обработку данных. Невозможно управлять транзакциями так же, как в реляционной базе данных, или создавать контрольные точки.

Пересчет переменных функций

Некоторые функции, такие как NOW, RAND или TODAY, не имеют фиксированных значений. Во избежание проблем с производительностью выполнение запроса или фильтрации обычно не приведет к повторной оценке таких функций, если они используются в вычисляемом столбце. Результаты для этих функций пересчитываются только при пересчете всего столбца. Такие ситуации включают обновление данных из внешнего источника данных или изменение данных вручную, вызывающие повторное вычисление формул, которые содержат эти функции. Однако переменные функции, такие как NOW, RAND или TODAY, всегда будут пересчитываться, если функция используется в определении вычисляемого поля.

Нужна дополнительная помощь?

Совершенствование навыков работы с Office
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединиться к программе предварительной оценки Office

Были ли сведения полезными?

×