Чат из Telegram Desktop сохраняется в файл JSON, а Excel превращает его в таблицу через Power Query: на вкладке «Данные» выберите получение данных из файла JSON. Список сообщений раскрывается в строки, а поле text, которое бывает списком частей, склеивается одной формулой.
Способ подходит для чатов, которые вы можете открыть в своём Telegram.
Где в Telegram Desktop экспорт данных?
Telegram описал экспорт в блоге 27 августа 2018 года. Там сказано, что данные доступны офлайн «in JSON-format or in beautifully formatted HTML», а путь к экспорту назван так: «click Settings > Export Telegram data». По-русски: данные можно получить в формате JSON или в оформленном HTML, а кнопка экспорта находится в настройках.
Это цитаты из анонса 2018 года. Меню в вашей версии Desktop могло измениться, поэтому ищите экспорт данных в настройках приложения и выбирайте формат JSON. HTML задуман для чтения глазами, для Excel он неудобен.
В тексте анонса слова Excel, xlsx и CSV не встречаются (поиск по тексту 01.11.2026 дал 0 совпадений). Превращение JSON в таблицу лежит на вашей стороне.
Что внутри файла JSON?
JSON это текстовый файл с вложенной структурой. В экспорте чата сообщения лежат списком внутри общего объекта. Каждое сообщение в свою очередь объект с полями, например дата, отправитель и текст.
Точный набор полей и название поля со списком сообщений зависят от версии Telegram Desktop и от типа записи: обычное сообщение, фото, пересылка, служебное уведомление. Прежде чем строить запрос, откройте файл result.json из папки экспорта в текстовом редакторе, найдите список сообщений и посмотрите структуру в своей версии Telegram Desktop. Названия полей из вашего файла и нужно подставлять в запрос.
Особого внимания требует поле text. В простом сообщении это строка. Если в тексте есть форматирование или ссылки, поле становится списком частей, где часть бывает обычной строкой или объектом со своим текстом. Power Query показывает такое поле как List, и пока список не склеен, фильтры по тексту не работают.
Как превратить JSON из Telegram в таблицу Excel через Power Query?
Названия пунктов меню зависят от версии Excel и Telegram Desktop, поэтому сверяйте шаги с тем, что видите на экране. Общий порядок такой: получить данные из файла JSON, открыть редактор Power Query и преобразовать список сообщений в таблицу.
- В Excel на вкладке «Данные» выберите получение данных из файла JSON. Укажите файл result.json из папки экспорта. Откроется редактор Power Query.
- Найдите поле со списком сообщений и нажмите на слово List в столбце значений. Затем преобразуйте список в таблицу (команда «В таблицу» на вкладке «Преобразование») и подтвердите без разделителя.
- Нажмите значок с двумя стрелками в заголовке столбца и отметьте нужные поля: дату, отправителя, text. Снимите флажок «Использовать исходное имя столбца как префикс».
- Склейте text. Выберите Добавление столбца → Настраиваемый столбец и вставьте формулу:
if Value.Is([text], type list) then Text.Combine(List.Transform([text], each if Value.Is(_, type record) then Text.From(_[text]) else Text.From(_))) else Text.From([text])Формула проверяет, список ли перед ней. Для списка она берёт каждую часть: строку оставляет как есть, у объекта берёт его поле text, затем соединяет всё в одну строку. Если в вашем файле поле называется иначе, замените text на своё имя. После создания столбца задайте ему тип «Текст».
- Удалите исходный столбец text. У столбца с датой смените тип на «Дата/время», чтобы Excel сортировал сообщения по времени.
- Нажмите Главная → Закрыть и загрузить. Таблица появится на листе, дальше работают обычные фильтры, сводные таблицы и формулы.
Когда запрос заработал, сохраните книгу. Когда у вас появится новый экспорт, положите файл на то же место и нажмите Данные → Обновить всё. Запрос запомнил путь и шаги, поэтому следующие экспорты обновляются одной кнопкой.
Что делать, если Power Query выдаёт ошибку?
- Проверьте регистр букв. Язык формул Power Query различает строчные и заглавные, поэтому text и Text считаются разными именами.
- Сверьте имена полей с тем, что видно в заголовках столбцов. Если вы переименовали столбец, формула должна ссылаться на новое имя.
- Откройте шаг, на котором появилась ошибка, и посмотрите значение в проблемной строке. Там может оказаться запись другого типа или сообщение без текста.
- Если при расширении столбца часть полей пропала, вернитесь на шаг назад и отметьте нужные поля заново.
Какой способ выбрать под вашу задачу?
| Задача | Что подойдёт |
|---|---|
| Архив своей переписки или рабочего чата в таблице | Экспорт Telegram Desktop и Power Query |
| Посты публичного канала для отчёта или анализа | Выгрузка по ссылке на канал |
| Комментарии под постами публичного канала | Выгрузка с режимом комментариев, плюс 10 ₽ за канал |
| Регулярный ежедневный или недельный срез | Выгрузка по расписанию |
| Закрытый чат или личная переписка | Экспорт Telegram Desktop |
Пример для третьей строки. Три публичных канала Telegram с комментариями стоят в сервисе 70 ₽: 20 + 10 + 10 = 40 ₽ за каналы и 3 × 10 = 30 ₽ за комментарии. Расчёт по формуле сервиса.
Как проверить, что таблица собралась верно?
Сделайте три сверки.
- Откройте в Telegram последнее сообщение чата и найдите его в таблице по дате и тексту. Совпало, значит, конец списка загружен целиком.
- Откройте сообщение со ссылкой или форматированием (жирный шрифт, ссылка в тексте) и проверьте, что склеенный текст читается без пропусков. Именно такие сообщения приходят списком частей.
- Отсортируйте таблицу по дате. Если порядок нарушен, проверьте тип столбца: даты сортируются верно только в типе «Дата/время», тип «Текст» сортирует их как строки.
В списке рядом с обычными сообщениями могут встретиться записи другого типа, например служебные уведомления или сообщения без текста. Посмотрите свой файл: если такие строки мешают, отфильтруйте их по пустому значению text.
Что делать с таблицей дальше?
Когда сообщения лежат в строках, работают обычные инструменты Excel.
- Поиск и фильтр по тексту: фильтр «Содержит» по столбцу с текстом находит все сообщения с нужным словом.
- Активность по дням: сводная таблица с датой в строках и числом сообщений в значениях показывает, когда в чате оживлённо.
- Активность по участникам: сводная таблица с отправителем в строках показывает, кто пишет чаще всех.
- Экспорт в другой формат: Файл → Сохранить как → CSV, если таблицу нужно загрузить в другую систему.
Экспортированный чат содержит сообщения живых людей. Храните файл так, как вы храните переписку: на рабочем устройстве, без публикации в открытом доступе.
Где этот способ заканчивается?
Экспорт отдаёт то, что видит ваш аккаунт. Отсюда вытекают три границы.
- Чаты и каналы, которые вы не можете открыть в своём Telegram, недоступны.
- Комментарии под постами в анонсе экспорта не упомянуты; возможен ли экспорт обсуждения канала, проверьте в своей версии Desktop.
- Каждый экспорт запускается вручную. Регулярный срез, например по двадцати каналам раз в день, потребует повторять шаги.
Для личных переписок и закрытых чатов экспорт Desktop остаётся основным вариантом: сервис работает только с публичными каналами.
Когда быстрее сервис Выгрузка?
| Критерий | Экспорт Desktop и Power Query | Выгрузка |
|---|---|---|
| Что берёт | Чаты, доступные вашему аккаунту | Публичный канал по ссылке, аккаунт не нужен |
| Что получается на выходе | JSON, таблицу собираете вы | Готовые xlsx, csv или json, 15 колонок и файл со сводкой |
| Комментарии | То, что есть в вашем экспорте | Комментарии Telegram: плюс 10 ₽ за канал |
| Период | Фильтруете в таблице после экспорта | Задаётся в форме заказа |
| Несколько источников | Зависит от настроек экспорта в вашей версии Desktop | До 50 каналов в одном заказе |
Цены Выгрузки: 20 ₽ за первый канал и 10 ₽ за каждый следующий, комментарии Telegram добавляют 10 ₽ за канал. Для Telegram скорость сервиса указана как быстрая. Расчёт по формуле для разных размеров заказа:
| Каналов Telegram | Без комментариев | С комментариями | Арифметика |
|---|---|---|---|
| 1 | 20 ₽ | 30 ₽ | 20; 20 + 1 × 10 |
| 5 | 60 ₽ | 110 ₽ | 20 + 4 × 10; 60 + 5 × 10 |
| 20 | 210 ₽ | 410 ₽ | 20 + 19 × 10; 210 + 20 × 10 |
| 50 | 510 ₽ | 1 010 ₽ | 20 + 49 × 10; 510 + 50 × 10 |
Оплата идёт с баланса. Минимальное пополнение 100 ₽, при пополнении от 1 000 ₽ начисляется бонус 10%. Если период пустой или сбор завершился сбоем, деньги за канал возвращаются на баланс сами.
Если задача состоит в том, чтобы получить посты публичного канала, начните со страницы выгрузки постов Telegram-канала. Другие способы скачать посты, включая скрипты и сервисы, сравниваются в статье про выгрузку Telegram-канала. Отдельно про комментарии написано в материале про комментарии Telegram в Excel.
Частые вопросы
Можно ли сохранить чат Telegram в Excel напрямую?
Напрямую нет. В анонсе экспорта Telegram от 27.08.2018 сказано, что данные доступны офлайн в формате JSON или в оформленном HTML. Слов Excel, xlsx и CSV в тексте анонса нет. Поэтому JSON нужно превратить в таблицу самостоятельно, например через Power Query.
Почему вместо текста сообщения в Power Query написано List?
Поле text в сообщении бывает строкой или списком частей, если в тексте есть форматирование или ссылки. Столбец со списком нужно склеить в одну строку формулой из шага 4 инструкции.
Какой формат выбрать при экспорте: JSON или HTML?
Для Excel нужен JSON. HTML в анонсе Telegram описан как оформленный вариант для чтения, а Power Query работает со структурой JSON.
Как обновить таблицу после нового экспорта?
Положите новый файл JSON на то же место, откройте книгу и нажмите Данные, затем Обновить всё. Запрос Power Query запомнил путь к файлу и все шаги преобразования.
Можно ли так выгрузить чужой канал вместе с комментариями?
Состав экспорта Telegram Desktop проверьте в своей версии приложения: в анонсе 2018 года комментарии под постами не упомянуты. Публичный канал по ссылке с комментариями выгружает сервис Выгрузка: 20 ₽ за первый канал и 10 ₽ за каждый следующий, плюс 10 ₽ за канал, если нужны комментарии.



