Манифест: включить только Sales_Jan, Sales_Feb и Sales_Mar; исключить Summary, Lookup, ConsolidatedSales и каждую будущую таблицу до утверждения. Отклонения: в Feb переименованы два столбца; в Mar добавлен необязательный Sales Rep; в Feb есть одна ошибка типа Order Date. Каноническое сопоставление строгое: OrderID→Order ID, Date→Order Date; все остальные заголовки должны совпадать. Отсутствующий Sales Rep становится типизированным null, а не пустой строкой.
Подготовка в Power Query: создайте отдельный запрос для каждой утверждённой таблицы и до преобразований добавьте Source Sheet, Source Table и основанный на индексе Source Row. Переименуйте столбцы по записи сопоставления, добавьте отсутствующий Sales Rep как допускающий null текст, выберите канонические столбцы и примените типы, сохранив копию до приведения или запись на основе Try для захвата ошибок. Добавьте друг к другу только три подготовленных запроса действительных строк. Создайте Errors из строк с ошибкой преобразования даты или суммы; строка Feb с TBD должна попасть туда вместе с исходным значением и происхождением. Не удаляйте её молча. Создайте DuplicateAudit группировкой по Order ID с сохранением всех вложенных строк. Соедините дубликаты с Corrections; выбирайте замену только при совпадении указанного месяца или таблицы, иначе исключите обе записи из CurrentSales и сохраните в карантине.
Сверка до разрешения дубликатов: Jan — 102 / 48 320,50; Feb — 98 / 46 105,00 с учётом карантина даты TBD, однако Net Sales остаётся прослеживаемой; Mar — 110 / 52 880,25; исходное объединение — 310 строк и сумма 147 305,75. Сверьте количества действительных строк, ошибок, карантина дубликатов и окончательных текущих записей с 310, используя взаимоисключающие статусы. Остановите обновление при неизвестном заголовке, отсутствии обязательного столбца, неутверждённой исходной таблице, ошибке преобразования суммы без карантина, неуказанном дубликате или несовпадении количества либо итога источника. Будущая таблица April не включается автоматически.