<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:yandex="http://news.yandex.ru" xmlns:turbo="http://turbo.yandex.ru" xmlns:media="http://search.yahoo.com/mrss/">
  <channel>
    <title>Статьи</title>
    <link>https://skillstune.ru</link>
    <description/>
    <language>ru</language>
    <lastBuildDate>Tue, 06 Oct 2026 17:36:02 +0300</lastBuildDate>
    <item turbo="true">
      <title>Как обработать данные, если вся выгрузка оказалась в одном столбце</title>
      <link>https://skillstune.ru/tpost/dannye-v-odnom-stolbce-power-query</link>
      <amplink>https://skillstune.ru/tpost/dannye-v-odnom-stolbce-power-query?amp=true</amplink>
      <pubDate>Tue, 06 Oct 2026 15:29:00 +0300</pubDate>
      <author>Автор: Марина Трушко Аналитик FMCG &amp;amp; Retail, 13 + лет опыта</author>
      <enclosure url="https://static.tildacdn.com/tild3364-3164-4537-a630-366465393062/A6B8BBCC-A23B-4B52-9.png" type="image/png"/>
      <turbo:content><![CDATA[<header><h1>Как обработать данные, если вся выгрузка оказалась в одном столбце</h1></header><figure><img alt="" src="https://static.tildacdn.com/tild3364-3164-4537-a630-366465393062/A6B8BBCC-A23B-4B52-9.png"/></figure><div class="t-redactor__text">Иногда данные выгружаются совсем не в том виде, в котором хотелось бы их получить.<br /><br />Например, вместо привычной таблицы:</div><img src="https://static.tildacdn.com/tild3364-3164-4537-a630-366465393062/A6B8BBCC-A23B-4B52-9.png"><div class="t-redactor__text">И если строк несколько десятков, такую таблицу ещё можно попытаться разобрать вручную.<br /><br />Но если выгрузка содержит тысячи строк, ручная обработка уже превращается в отдельную задачу.<br /><br />Разберём, как можно привести такие данные в нормальный табличный вид с помощью Power Query. А заодно посмотрим, как ИИ может ускорить решение подобных нестандартных задач.</div><h2  class="t-redactor__h2">Что не так с исходной выгрузкой</h2><div class="t-redactor__text">В нашем примере информация расположена блоками по четыре строки:<br /><ol><li data-list="ordered">регион</li><li data-list="ordered">магазин</li><li data-list="ordered">дата продажи</li><li data-list="ordered">сумма продаж</li></ol><br />Затем начинается следующий блок.<br /><br />Главная проблема в том, что для анализа нам нужны не четыре строки, а одна строка на <strong>одну операцию или объект наблюдения.</strong><br /><br />То есть из этого:<br />Москва<br />Магазин 1<br />01.09.2026<br />125 000 руб<br /><br />нужно получить:</div><div class="t-table__viewport"><div class="t-table__wrapper"><table class="t-table__table"><tbody><tr class="t-table__row"><td class="t-table__cell" data-row="0" data-column="0"><div class="t-table__cell-content">Регион</div></td><td class="t-table__cell" data-row="0" data-column="1"><div class="t-table__cell-content">Магазин</div></td><td class="t-table__cell" data-row="0" data-column="2"><div class="t-table__cell-content">Дата продажи</div></td><td class="t-table__cell" data-row="0" data-column="3"><div class="t-table__cell-content">Продажи</div></td></tr><tr class="t-table__row"><td class="t-table__cell" data-row="1" data-column="0"><div class="t-table__cell-content">Москва</div></td><td class="t-table__cell" data-row="1" data-column="1"><div class="t-table__cell-content">Магазин 1</div></td><td class="t-table__cell" data-row="1" data-column="2"><div class="t-table__cell-content">01.09.2026</div></td><td class="t-table__cell" data-row="1" data-column="3"><div class="t-table__cell-content">125000</div></td></tr></tbody><colgroup><col style="max-width:180px;min-width:180px;width:180px;"><col style="max-width:180px;min-width:180px;width:180px;"><col style="max-width:180px;min-width:180px;width:180px;"><col style="max-width:180px;min-width:180px;width:180px;"></colgroup></table></div></div><div class="t-redactor__text">И повторить такое преобразование для всей выгрузки.</div><h2  class="t-redactor__h2">Можно ли сделать это руками?</h2><div class="t-redactor__text">Конечно.<br /><br />Если вы хорошо знаете Power Query, задача сама по себе не является какой-то невероятно сложной.<br /><br />Можно добавить индекс, определить номер каждой строки внутри блока, разбить данные на группы, развернуть их в столбцы и привести типы данных.<br /><br />Но здесь появляется другой вопрос:<br /><br /><strong><em>обязательно ли каждый раз самостоятельно придумывать все шаги и писать код с нуля?</em></strong><br /><br />И вот здесь сегодня очень удобно подключать ИИ.</div><h2  class="t-redactor__h2">Как я поставила задачу ИИ</h2><div class="t-redactor__text">Вместо того чтобы самой писать M-код, можно подробно описать структуру данных и результат, который нам нужен.<br />Например, промпт может выглядеть так:<br /><br /><em>«У меня есть таблица Excel RawVerticalData с одним столбцом “Данные”.</em><br /><em>Информация расположена повторяющимися блоками по 4 строки:</em><br /><em></em><br /><em>1-я строка — регион</em><br /><em>2-я строка — магазин</em><br /><em>3-я строка — дата продажи</em><br /><em>4-я строка — продажи</em><br /><em></em><br /><em>Нужно написать M-код для Power Query, который преобразует эти данные в таблицу со столбцами:</em><br /><ul><li data-list="bullet"><em>Регион</em></li><li data-list="bullet"><em>Магазин</em></li><li data-list="bullet"><em>Дата продажи</em></li><li data-list="bullet"><em>Продажи</em></li></ul><em></em><br /><em>Каждые четыре строки исходной таблицы должны превращаться в одну строку итоговой таблицы.</em><br /><em>Поле “Дата продажи” необходимо привести к типу Date.</em><br /><em></em><br /><em>Из поля “Продажи” нужно удалить текст “руб” и пробелы и преобразовать значение в число.</em><br /><em></em><br /><em>Напиши готовый M-код и кратко объясни логику решения».</em><br /><br />Обратите внимание на важный момент: чем точнее мы описываем структуру исходных данных и ожидаемый результат, тем выше вероятность сразу получить рабочее решение.<br />Фраза «сделай мне нормально эту таблицу» даст ИИ значительно меньше информации.</div><h2  class="t-redactor__h2">Как выглядит логика решения</h2><div class="t-redactor__text">В данном случае алгоритм достаточно понятный.<br />Сначала Power Query добавляет к каждой строке индекс:<br />0<br />1<br />2<br />3<br />4<br />5<br />6<br />7<br />…<br /><br />Затем каждые четыре строки объединяются в одну группу.<br />У строк 0–3 номер группы будет 0<br />У строк 4–7 — группа 1<br />У строк 8–11 — группа 2<br /><br />И так далее.<br />После этого по остатку от деления индекса на 4 определяется, что находится в каждой строке:<br />0 → Регион<br />1 → Магазин<br />2 → Дата продажи<br />3 → Продажи<br /><br />После этого данные можно развернуть в четыре отдельных столбца.</div><h2  class="t-redactor__h2">Пример M-кода</h2><div class="t-redactor__text">Для исходной таблицы RawVerticalData решение может выглядеть примерно так:</div><blockquote class="t-redactor__quote">let<br />   Source = Excel.CurrentWorkbook(){[Name="RawVerticalData"]}[Content],<br />   AddIndex = Table.AddIndexColumn(<br />       Source,<br />       "Index",<br />       0,<br />       1,<br />       Int64.Type<br /> <br />   AddGroup = Table.AddColumn(<br />       AddIndex,<br />       "Group",<br />       each Number.IntegerDivide([Index], 4),<br />       Int64.Type<br /> <br />   AddField = Table.AddColumn(<br />       AddGroup,<br />       "Field",<br />       each {"Регион", "Магазин", "Дата продажи", "Продажи"}{Number.Mod([Index], 4)}<br /> <br />   RemoveIndex = Table.RemoveColumns(<br />       AddField,<br />       {"Index"}<br /> <br />   PivotData = Table.Pivot(<br />       RemoveIndex,<br />       {"Регион", "Магазин", "Дата продажи", "Продажи"},<br />       "Field",<br />       "Данные",<br />       List.First<br /> <br />   CleanSales = Table.TransformColumns(<br />       PivotData,<br />       {<br />           {<br />               "Продажи",<br />               each<br />                   Number.FromText(<br />                       Text.Replace(<br />                           Text.Replace(<br />                               Text.Replace(Text.From(_), "руб", ""),<br />                               " ",<br />                               ""<br />                           ),<br />                           Character.FromNumber(160),<br />                           ""<br />                       ),<br />                       "ru-RU"<br />                   ),<br />               type number<br />           }<br />       }<br /> <br />   ChangeDateType = Table.TransformColumns(<br />       CleanSales,<br />       {<br />           {<br />               "Дата продажи",<br />               each Date.From(_, "ru-RU"),<br />               type date<br />           }<br />       }<br /> <br />   RemoveGroup = Table.RemoveColumns(<br />       ChangeDateType,<br />       {"Group"}<br />   )<br />in<br />       RemoveGroup</blockquote><div class="t-redactor__text">Код можно адаптировать под конкретный источник данных, названия столбцов и формат исходной выгрузки.</div><h2  class="t-redactor__h2">Значит ли это, что Power Query теперь можно не изучать</h2><div class="t-redactor__text">Нет.<br />И вот здесь, на мой взгляд, находится самое интересное изменение, которое происходит сейчас в работе с Excel и аналитикой.<br /><br />Раньше для решения нестандартной задачи специалисту часто приходилось:<br /><br /><ul><li data-list="bullet">искать похожий пример</li><li data-list="bullet">читать форумы</li><li data-list="bullet">разбираться в синтаксисе M</li><li data-list="bullet">самостоятельно собирать код</li></ul><br />Сегодня ИИ может снять значительную часть этого барьера.<br /><br />Вы можете объяснить ему задачу обычными словами и получить вариант решения за несколько секунд.<br /><br />Но дальше всё равно нужно понимать:<br /><ul><li data-list="bullet">что именно сделал код</li><li data-list="bullet">соответствует ли результат вашей задаче</li><li data-list="bullet">правильно ли определились типы данных</li><li data-list="bullet">не потерялись ли строки</li><li data-list="bullet">что произойдёт при изменении структуры исходной выгрузки</li><li data-list="bullet">почему запрос выдал ошибку</li><li data-list="bullet">как объяснить ИИ, что именно нужно исправить</li></ul><br />То есть ценность специалиста постепенно смещается.<br />Всё меньше ценится способность помнить каждый синтаксический нюанс.<br /><br />И всё больше - способность <strong>правильно поставить задачу, понять предложенное решение, проверить результат и встроить его в рабочий процесс.</strong></div><h2  class="t-redactor__h2">Что обязательно проверить после кода от ИИ</h2><div class="t-redactor__text">Даже если запрос отработал без ошибок, я рекомендую проверить несколько вещей.<br /><br /><strong>1. Количество строк</strong><br />Если в исходных данных было 4 000 строк, после преобразования блоков по четыре мы ожидаем получить примерно 1 000 строк.<br />Если получилось 987 или 1 043 — стоит разобраться почему.<br /><br /><strong>2. Даты</strong><br />Убедитесь, что дата действительно стала датой, а не осталась текстом.<br />Это особенно важно, если исходные данные могут содержать разные региональные форматы.<br /><br /><strong>3. Продажи</strong><br />Проверьте несколько исходных значений вручную.<br />Например:<br /><br /><em>125 000 руб</em><br /><br />должно превратиться именно в число:<br /><br /><em>125000</em><br /><br />а не в текст.<br /><br /><strong>4. Структуру блоков</strong><br />Наше решение предполагает, что каждый блок всегда состоит ровно из четырёх строк.<br />Если в какой-то момент источник добавит пятую строку, например «Менеджер», весь алгоритм необходимо будет изменить.<br /><br />Именно поэтому важно понимать логику запроса, а не просто копировать код.</div><h2  class="t-redactor__h2">Где особенно полезен такой подход</h2><div class="t-redactor__text">Подобные задачи постоянно встречаются в реальной работе.<br /><br />Это могут быть:<br /><ul><li data-list="bullet">нестандартные выгрузки из учётных систем</li><li data-list="bullet">файлы из 1С</li><li data-list="bullet">отчёты поставщиков</li><li data-list="bullet">данные маркетплейсов</li><li data-list="bullet">выгрузки, подготовленные для чтения человеком, а не для анализа</li><li data-list="bullet">файлы с многоуровневыми заголовками</li><li data-list="bullet">таблицы с промежуточными итогами</li><li data-list="bullet">несколько характеристик внутри одного столбца</li></ul><br />Именно в таких случаях Power Query особенно полезен.<br />Вместо того чтобы каждый месяц заново приводить файл в порядок, мы один раз настраиваем последовательность преобразований, а при следующей выгрузке просто обновляем запрос.</div><h2  class="t-redactor__h2">Главное</h2><div class="t-redactor__text">ИИ действительно сделал работу с Power Query проще.<br /><br />Теперь необязательно уметь самостоятельно написать сложный M-код с чистого листа, чтобы попробовать решить нестандартную задачу.<br />Но чем лучше вы понимаете сам Power Query, структуру данных и логику преобразований, тем полезнее становится ИИ.<br />Потому что тогда он не заменяет ваши знания, а ускоряет работу с ними.<br /><br />И это, на мой взгляд, один из самых полезных сценариев применения ИИ в Excel сегодня.<br />Если вы хотите научиться не только обрабатывать отдельные выгрузки, но и строить автоматизированные процессы подготовки данных и отчётности, эти задачи подробно разбираем на программе Power Excel.</div><h2  class="t-redactor__h2"><a href="https://skillstune.ru/lessons?utm_source=tilda&amp;utm_medium=social&amp;utm_campaign=&amp;utm_content=text&amp;utm_term=pe19.0">[Посмотреть программу Power Excel]</a></h2>]]></turbo:content>
    </item>
  </channel>
</rss>
