Диаграмма из отчёта 1С в Excel: картинкой, вместе с отчётом или живым графиком
Содержание
Сохранить диаграмму из 1С в Excel можно тремя путями. Быстрее всего — сохранить весь отчёт в формате .xlsx через ☰ → Файл → Сохранить как: диаграмма попадёт в файл картинкой. Если нужен график, который можно править в Excel, выгружайте не диаграмму, а таблицу с данными и стройте график уже в Excel — это единственный способ получить его без потери качества.
Выбор простой. Нужна иллюстрация для письма или презентации — хватит картинки. Нужно менять цвета, подписи, добавлять ряды и пересчитывать — нужны данные. Ниже каждый способ по шагам, плюс что делать с размытыми подписями, «кракозябрами» и регулярной выгрузкой.
Как диаграмма живёт в отчёте 1С и почему это важно для Excel
Отчёт в 1С 8.3 формирует табличный документ. Диаграмма в нём — не набор ячеек, а отдельный рисунок, «наложенный» поверх листа. У рисунка свой объект — диаграмма платформы со своими сериями, точками и легендой.
Excel про объект «Диаграмма 1С» ничего не знает. Поэтому при любом переносе платформа превращает его во что-то понятное Excel:
- 🖼 при сохранении отчёта в
.xlsx— в рисунок на листе; - 📋 при копировании — в изображение в буфере обмена;
- 📄 при сохранении в PDF — в элемент страницы PDF.
Отсюда главный вывод: родной редактируемый график Excel из 1С «как есть» не выгружается. Его строят в Excel по данным. Всё остальное — варианты картинки разного качества.
| Способ | Что получите в Excel | Когда выбирать | Ограничения |
|---|---|---|---|
| Копирование / снимок экрана | Картинку | Нужна одна диаграмма прямо сейчас | Качество = размер на экране |
Сохранение отчёта в .xlsx | Таблицу + диаграмму рисунком | Нужен весь отчёт с иллюстрацией | График не редактируется |
| Выгрузка данных через настройки СКД | Таблицу, по которой строится график | Нужен живой график, правки, пересчёт | Пара минут на настройку |
| Через PDF | Векторную или растровую страницу | Печать, пересылка, вставка в документ | В Excel только объектом или картинкой |
| Внешняя обработка | Файлы по расписанию или кнопке | Регулярная выгрузка десятков отчётов | Нужен программист |
Способ 1. Скопировать диаграмму через буфер обмена
Самый короткий путь, когда отчёт уже сформирован и нужна одна картинка.
- Сформируйте отчёт с диаграммой.
- Щёлкните по диаграмме один раз — вокруг неё появится рамка выделения рисунка.
- Нажмите
Ctrl+C. - Откройте лист Excel, встаньте в нужную ячейку и нажмите
Ctrl+V.
Если после вставки ничего не появилось или вставился пустой прямоугольник, буфер не принял формат. Тогда выручает снимок экрана:
- ✂️
Win+Shift+Sв Windows 10 и 11 — выделите область с диаграммой, она уйдёт в буфер; - 🖱 приложение «Ножницы» — то же самое, но с сохранением в файл
.png; - 🖥 при работе через удалённый рабочий стол снимок делайте внутри сеанса, а не на своём компьютере, иначе захватите рамку окна подключения.
Перед копированием растяните диаграмму. Потяните за маркер рамки выделения — рисунок станет больше, подписи осей перестанут наезжать друг на друга. Картинка в буфере берёт размер с экрана: чем крупнее диаграмма в 1С, тем чётче она в Excel.
Минус способа один: это фотография графика. Поменять подписи или добавить месяц в Excel не получится.
Способ 2. Сохранить отчёт целиком в Excel и убрать лишнее
Подходит, когда вместе с диаграммой нужны цифры: руководитель хочет видеть и график, и таблицу под ним.
Сохранение в xlsx
- Сформируйте отчёт.
- Поставьте курсор в любую ячейку результата отчёта.
- Откройте главное меню
☰ → Файл → Сохранить какили нажмитеCtrl+S. В типовых отчётах БП 3.0, ЗУП 3.1 и УТ 11 есть и кнопка с дискетой на командной панели формы. - В поле типа файла выберите лист Excel 2007 и новее — расширение
.xlsx. - Укажите папку и имя, нажмите «Сохранить».
Формат .xls (Excel 97) тоже есть в списке, но берите его только для совсем старого Office: у него ограничение 65 536 строк, и большой отчёт обрежется.
Что сделать после открытия в Excel
Отчёт ляжет на лист вместе с шапкой, отбором и итогами. Диаграмма окажется рисунком примерно там же, где была в 1С. Дальше:
- Щёлкните по рисунку, нажмите
Ctrl+Xи вставьте его на отдельный лист — так он не будет мешать сортировке. - Удалите строки с параметрами отчёта над таблицей.
- Если нужна фильтрация, выделите шапку и нажмите
Ctrl+Shift+L— появятся автофильтры. - Объединённые ячейки в шапке мешают сортировке. Выделите таблицу и снимите объединение на вкладке «Главная».
Рисунок не связан с таблицей. Отфильтровали строки — график остался прежним. Для графика, который следует за фильтром, переходите к способу 3.
Способ 3. Выгрузить данные диаграммы через настройки СКД и построить график в Excel
Это и есть сохранение «без потери качества»: в Excel появляется настоящий график, который масштабируется, правится и пересчитывается.
Большинство отчётов 1С собраны на системе компоновки данных (СКД). У каждого варианта отчёта есть структура: группировки, таблицы и диаграммы. Диаграмму в структуре можно отключить и вывести вместо неё таблицу с теми же данными.
Шаг 1. Откройте структуру варианта
- В форме отчёта нажмите «Настройки».
- Переключите вид настроек на «Расширенный» — он появляется в типовых конфигурациях на базе БСП.
- Перейдите на вкладку «Структура».
В структуре вы увидите элемент «Диаграмма» с точками и сериями внутри. Точки — это то, что идёт по горизонтальной оси (месяцы, номенклатура). Серии — линии или столбцы (склады, подразделения, показатели).
Шаг 2. Замените диаграмму таблицей
- Снимите флажок у элемента «Диаграмма» — он перестанет выводиться.
- Добавьте новую группировку или таблицу. В таблицу добавьте строки с тем же полем, что было в точках диаграммы, и колонки с тем полем, что было в сериях.
- На вкладке «Поля» (или «Показатели») оставьте те же ресурсы, что считала диаграмма: сумму, количество, выручку.
- Нажмите «Закрыть и сформировать».
Получится сводная таблица: строки — периоды или товары, колонки — серии, на пересечении — значения. Ровно в таком виде Excel ожидает исходные данные для графика.
Сохраните настройку как свой вариант отчёта: «Ещё» → «Сохранить вариант отчёта» или кнопка с тем же смыслом в командной панели. В следующий раз таблица под Excel будет готова в один клик, а исходный вариант с диаграммой не пострадает.
Шаг 3. Сохраните таблицу и постройте график
- Сохраните отчёт в
.xlsx, как в способе 2. - В Excel удалите шапку отчёта и строку общих итогов — иначе итог станет самым высоким столбиком.
- Выделите таблицу вместе с заголовками колонок.
- Вкладка «Вставка» → группа «Диаграммы» → выберите тип: гистограмма, линейчатая, график, круговая.
Тип подбирайте под тот, что был в 1С: круговая диаграмма 1С — круговая Excel, «гистограмма» — гистограмма с группировкой, «график» — график с маркерами.
Если отчёт не на СКД
Старые отчёты и обработки на «ручных» макетах настроек структуры не имеют. Тогда:
- 🔎 ищите в форме переключатель вида вывода «таблица / диаграмма» — он встречается в аналитических отчётах;
- 📊 соберите аналогичную таблицу «Универсальным отчётом» — он есть в типовых конфигурациях на БСП и работает на СКД, так что вывод таблицей там настраивается так же;
- 📋 скопируйте нужные строки отчёта через
Ctrl+Cи вставьте в Excel — ячейки табличного документа копируются как обычная таблица.
Через печатную форму и PDF
PDF удобен, когда диаграмма нужна в отчёт для банка, в презентацию или на печать, а не для расчётов.
Сохранение отчёта в PDF
- Сформируйте отчёт.
☰ → Файл → Сохранить каки выберите тип «Документ PDF».- Или нажмите «Печать» и выберите виртуальный принтер «Microsoft Print to PDF» — он есть в Windows 10 и 11.
Перед сохранением откройте «Предварительный просмотр» и проверьте, не разрезалась ли диаграмма границей страницы. Если разрезалась — в параметрах страницы выберите альбомную ориентацию или уменьшите масштаб печати.
Как перенести PDF в Excel
Вариантов три, и все дают картинку:
| Вариант | Как сделать | Результат |
|---|---|---|
| Вставить объект | «Вставка» → «Объект» → «Создать из файла» | Значок или первая страница PDF, по двойному щелчку открывается файл |
| Снимок из PDF | Открыть PDF, увеличить до 200%, сделать снимок Win+Shift+S | Чёткая картинка большого размера |
| Экспорт в картинку | Открыть PDF в программе, которая сохраняет страницу в PNG | Файл картинки для вставки |
Трюк с увеличением до 200% — самый практичный способ получить резкое изображение. Масштаб PDF не ограничен размером экрана 1С, поэтому подписи осей выйдут крупными и ровными.
Размытые подписи, кракозябры и пропавшие шрифты
Проблемы при переносе повторяются. Разберём симптом — причина — что делать.
Отдельно про кодировку. Файлы .xlsx и .xls из 1С хранят русские буквы корректно, вопрос кодировки возникает только с текстовыми форматами. Поэтому для Excel всегда выбирайте лист Excel, а не «Текстовый документ».
Автоматизация выгрузки через внешнюю обработку
Когда диаграммы нужно выгружать регулярно — например, 15 отчётов каждый понедельник, — ручной путь надоедает. Внешняя обработка делает это одной кнопкой.
Что умеет платформа:
- 💾 метод табличного документа
Записать()сохраняет его в файл нужного формата, включая xlsx; - 🖼 у объекта «Диаграмма» есть метод
ПолучитьКартинку()— он отдаёт изображение заданного размера в пикселях; - 📐 рисунки табличного документа доступны через коллекцию
Рисунки, у рисунка-диаграммы типТипРисункаТабличногоДокумента.Диаграмма, а сама диаграмма — в свойствеОбъект.
Пример: сохранить отчёт в xlsx и каждую диаграмму отдельной картинкой
Код для формы внешней обработки. ТабДок — реквизит формы типа «Табличный документ», куда вы предварительно вывели отчёт. Процедура работает на клиенте.
&НаКлиенте
Процедура ВыгрузитьВExcel(Команда)
Каталог = "C:\Выгрузка\";
// 1. Весь отчёт в xlsx: таблица + диаграммы рисунками
ТабДок.Записать(Каталог + "Отчет.xlsx", ТипФайлаТабличногоДокумента.XLSX);
// 2. Каждая диаграмма отдельным файлом крупного размера
Номер = 0;
Для Каждого Рисунок Из ТабДок.Рисунки Цикл
Если Рисунок.ТипРисунка <> ТипРисункаТабличногоДокумента.Диаграмма Тогда
Продолжить;
КонецЕсли;
Номер = Номер + 1;
Картинка = Рисунок.Объект.ПолучитьКартинку(1600, 900);
ИмяФайла = СтрШаблон("%1Диаграмма_%2.png", Каталог, Формат(Номер, "ЧГ=0"));
Картинка.Записать(ИмяФайла);
КонецЦикла;
Сообщить(СтрШаблон("Сохранено диаграмм: %1", Формат(Номер, "ЧГ=0")));
КонецПроцедуры
Размер 1600×900 даёт картинку заметно чётче, чем снимок с экрана ноутбука. Каталог C:\Выгрузка\ должен существовать заранее.
Живой график в Excel через COM
На Windows с установленным Excel обработка может сама построить в книге настоящую диаграмму по выгруженной таблице. Это делается через COM-объект Excel.Application:
&НаКлиенте
Процедура ПостроитьГрафик(ИмяФайла, Диапазон)
Excel = Новый COMОбъект("Excel.Application");
Книга = Excel.Workbooks.Open(ИмяФайла);
Лист = Книга.Worksheets(1);
// Left, Top, Width, Height в пунктах
Объект = Лист.ChartObjects.Add(400, 20, 480, 300);
Объект.Chart.SetSourceData(Лист.Range(Диапазон));
Объект.Chart.ChartType = 51; // xlColumnClustered — гистограмма с группировкой
Книга.Save();
Книга.Close();
Excel.Quit();
КонецПроцедуры
Пример вызова: ПостроитьГрафик("C:\Выгрузка\Отчет.xlsx", "A1:D13") — по таблице из 12 месяцев и трёх серий с заголовками.
COM работает только там, где установлен Microsoft Excel. В веб-клиенте и на Linux этот код не выполнится. Если обработку запускать на сервере, Excel нужен на сервере, а файл окажется в каталоге сервера, а не у пользователя. Для веб-клиента и Linux ограничьтесь методом Записать() и стройте график в Excel вручную.
Если выгрузка нужна по расписанию, оформите код как регламентное задание в расширении конфигурации. Регламентные задания выполняются на сервере, поэтому там подходит только сохранение через Записать() и ПолучитьКартинку(), без COM.