Отчёт из 1С — в файл Excel: кнопка, макет, автоматическая выгрузка
Содержание
Чтобы сохранить отчет из 1С в Excel, сформируйте его, нажмите кнопку с дискетой (Сохранить, или Ctrl+S) и в поле «Тип файла» выберите «Лист Microsoft Excel 2007-… (*.xlsx)». Файл откроется в Excel со всеми колонками, шрифтами и заливкой.
Частое заблуждение — что для выгрузки нужна отдельная обработка или «режим экспорта». Не нужна. Любой отчёт, печатная форма или список в 1С 8.3 строится как табличный документ, а табличный документ платформа сама записывает в Excel. Всё описанное ниже работает одинаково в Бухгалтерии 3.0, ЗУП 3.1, УТ 11 и других конфигурациях на интерфейсе «Такси»: это механизм платформы, а не конкретной программы.
1. Базовая выгрузка отчёта в Excel за минуту
Порядок для любого стандартного отчёта — оборотно-сальдовой ведомости, анализа счёта, ведомости по складу:
- Откройте отчёт и задайте период и отборы.
- Нажмите
Сформироватьи дождитесь, пока таблица заполнится. - Нажмите значок дискеты в командной панели отчёта. Если его не видно, он спрятан в меню
Ещё. - В окне сохранения выберите папку, введите имя файла.
- В списке «Тип файла» укажите xlsx и нажмите
Сохранить.
Альтернатива для тех, кто привык к меню: главное меню (кнопка с тремя полосками в левом верхнем углу) → Файл → Сохранить как.... Результат тот же.
Если нужен не весь отчёт, а кусок, выделите ячейки мышью, нажмите Ctrl+C и вставьте в Excel через Ctrl+V. Числа обычно вставляются как числа, но форматирование и ширина колонок могут сбиться. Для аккуратной таблицы надёжнее сохранить файл целиком.
Какой формат выбрать
В окне сохранения платформа предлагает с десяток вариантов. Для работы в Excel важны два.
| Формат | Когда брать | Ограничения |
|---|---|---|
.xlsx (Excel 2007 и новее) | Почти всегда | До 1 048 576 строк и 16 384 колонок на лист |
.xls (Excel 97) | Получатель работает в очень старом Excel | До 65 536 строк и 256 колонок — большой отчёт обрежется или не запишется |
.mxl | Передать отчёт другому пользователю 1С без потерь | Открывается только в 1С или в бесплатной программе просмотра файлов 1С |
.ods | Получатель работает в LibreOffice | Иногда теряется часть оформления |
.pdf | Отчёт нужен «только смотреть» | Цифры в Excel без перенабора не перенести |
Если отчёт больше 65 тысяч строк, формат xls не подходит: часть данных пропадёт. Карточку счёта за год по крупному контрагенту сохраняйте только в xlsx.
Если вы работаете через браузер
В веб-клиенте и в 1С:Фреш кнопка та же, но окна выбора папки нет. После выбора формата браузер скачивает файл в папку загрузок. Если ничего не происходит, проверьте, не заблокировал ли браузер всплывающее окно или загрузку, — значок обычно появляется в адресной строке.
2. Печатные формы, списки и нестандартные таблицы
Отчёт — не единственное, что просят «скинуть в Excel». Счёт, акт, накладную, список контрагентов тоже можно выгрузить, только путь чуть другой.
Печатная форма документа
Откройте документ → Печать → нужная форма. В окне печатной формы нажмите Сохранить (дискета). Появится окно, где галочками отмечают один или несколько форматов сразу: xlsx, pdf, docx и другие. Там же выбирают, куда положить файл: в папку на компьютере или прикрепить к самому документу.
Удобно, когда клиенту нужен и PDF для подписи, и Excel для сверки: отмечаете оба формата, получаете два файла за один раз.
Любой список: справочник или журнал документов
В журнале нет кнопки «в Excel», но есть обходной путь:
- Откройте список, например
Справочники → Контрагенты. - Настройте колонки и отбор: что видно на экране, то и выгрузится.
Ещё→Вывести список....- В окне отметьте нужные колонки, способ вывода оставьте «Табличный документ», нажмите
ОК. - В открывшейся таблице — дискета → xlsx.
Так выгружают номенклатуру с ценами, список сотрудников, реестр документов за период.
Таблица, которую нельзя сохранить кнопкой
Бывает, что форма показывает данные не табличным документом, а таблицей формы — например, табличная часть внутри документа. Кнопки сохранения у неё нет. Здесь работает только копирование: выделите строки (Ctrl+A в таблице выделяет всё), Ctrl+C, вставка в Excel. Если и это не помогает, данные почти всегда можно получить отчётом или через Вывести список....
3. Как подготовить отчёт, чтобы в Excel было удобно считать
Отчёт, который хорошо выглядит на экране, в Excel часто неудобен: многоуровневые группировки, объединённые ячейки, промежуточные итоги между строками. Фильтр и сводная таблица на таком листе работают плохо.
Перед сохранением потратьте минуту на настройки отчёта (кнопка Настройки... в форме отчёта):
- 🧩 Уберите лишние группировки. Чем «площе» таблица, тем проще потом сортировать и фильтровать. Одна группировка верхнего уровня — уже много.
- ➖ Отключите промежуточные итоги, если будете считать в Excel сами. Иначе итоги по группе попадут в сумму дважды.
- 📏 Выведите нужные поля отдельными колонками, а не «Контрагент, договор» в одной ячейке. Разделять текст в Excel — лишняя работа.
- 📅 Сузьте период. Отчёт за квартал сохраняется за секунды, за пять лет может «висеть» минутами.
В отчётах на системе компоновки данных (это большинство отчётов в современных конфигурациях) в настройках есть переключатель простого и расширенного вида. В расширенном доступна структура отчёта: там удаляют группировки и меняют порядок полей.
Нужна одна и та же «плоская» выгрузка каждый месяц? Сохраните настройки отчёта под своим именем (команда сохранения настроек в меню Ещё формы отчёта). В следующий раз выберете вариант из списка и сразу сохраните в Excel.
Работа с макетом табличного документа
Готовый результат иногда удобнее поправить прямо в 1С до выгрузки. Во многих отчётах поле результата можно сделать редактируемым: поищите в меню Ещё формы отчёта команду включения редактирования. Если её нет, правьте уже в Excel. В режиме редактирования можно:
- удалить ненужные строки и колонки;
- поправить ширину колонок, перетащив границу заголовка;
- поменять шрифт выделенных ячеек.
Правки сохранятся в файл, но не в сам отчёт: при повторном формировании всё вернётся. Если править приходится каждый раз — значит, менять нужно настройки отчёта, а не результат.
4. Шрифты, ширина колонок и параметры страницы
Платформа переносит в Excel почти всё оформление табличного документа: шрифт, размер, жирность, цвет и заливку, границы, ширину колонок, объединение ячеек. Обычно файл выглядит как на экране. Расхождения появляются в трёх случаях.
Шрифта нет на компьютере получателя. Отчёт свёрстан, например, шрифтом Arial, а у коллеги на Mac его замена шире. Текст вылезает за ячейки, появляются «решётки» ##### вместо чисел. Лечится в Excel: выделить колонки → двойной щелчок по границе заголовка (автоподбор ширины).
Объединённые ячейки. Шапки отчётов в 1С любят объединять. В Excel из-за этого не работают сортировка и вставка формул «протягиванием». Выделите шапку и снимите объединение кнопкой «Объединить и поместить в центре» на вкладке «Главная».
Параметры печати. Ориентация, поля и масштаб задаются в 1С через Ещё → Параметры страницы (или главное меню → Файл → Параметры страницы). Ориентация и поля, как правило, переходят в xlsx. Масштаб «вписать в ширину листа» надёжнее настроить уже в Excel: «Разметка страницы» → «Вписать». Если нужен печатный вид без правок, сохраните в PDF — там вёрстка зафиксирована.
5. Числа превратились в текст, а буквы — в «кракозябры»
Две самые частые жалобы после выгрузки — не считаются суммы и не читается кириллица. У обеих есть простые объяснения.
Суммы не суммируются
Признак: в ячейке зелёный треугольник в углу, число прижато к левому краю, СУММ даёт ноль. Причин обычно две:
- 🔤 Отчёт вывел число как строку вместе с разделителем разрядов. Разделитель в 1С — неразрывный пробел, и Excel не узнаёт в «1 250 000,00» число.
- 🔤 Печатная форма собрана из текстовых фрагментов: сумма прописью и цифрами в одной ячейке, номер с префиксом.
Как исправить в Excel:
- Выделите колонку с суммами.
Ctrl+H(Найти и заменить).- В поле «Найти» введите неразрывный пробел: удерживая
Alt, наберите на цифровой клавиатуре0160. Поле «Заменить на» оставьте пустым. Заменить все.- Если числа остались текстом — «Данные» → «Текст по столбцам» →
Готово. Excel пересчитает значения.
Для дат то же самое: если дата прижата влево, «Текст по столбцам» с указанием формата даты на последнем шаге мастера превращает её в настоящую дату.
Кракозябры вместо русских букв
В xlsx и xls кодировки не бывает: внутри файла текст хранится в Юникоде, и Excel любой версии покажет кириллицу правильно. Кракозябры появляются, когда отчёт сохранён в текстовом формате (.txt) и открыт в Excel двойным щелчком.
В списке форматов 1С есть два текстовых варианта: в кодировке UTF-8 и в кодировке ANSI (Windows-1251). Excel при открытии txt может угадать кодировку неверно. Правильный путь — не открывать файл двойным щелчком, а импортировать: в Excel «Данные» → «Из текстового/CSV-файла», выбрать файл и в поле «Источник файла» указать кодировку вручную (1251 или UTF-8 — какую выбирали при сохранении).
Спецсимволы в названиях — кавычки, знак №, длинное тире — в xlsx сохраняются корректно. Если они ломаются, файл почти наверняка сохранён в txt или html. Пересохраните в xlsx.
6. Автоматическая выгрузка без ручного сохранения
Если отчёт нужен в Excel каждый день или каждую неделю, нажимать дискету незачем. Есть два пути: штатный и программный.
Рассылка отчётов (без программиста)
В типовых конфигурациях на БСП есть механизм рассылок: отчёт формируется по расписанию и уходит письмом или ложится в сетевую папку в выбранном формате. Ищите его в разделе Администрирование → Печатные формы, отчеты и обработки → Рассылки отчетов; в отдельных конфигурациях пункт может стоять в другом месте того же раздела.
Порядок настройки:
- Создайте рассылку, добавьте в неё отчёт и выберите его вариант с нужными настройками.
- Укажите формат файла — xlsx.
- Задайте получателей (почта) или папку на сервере.
- Включите расписание: например, по понедельникам в 8:00.
Для рассылки по почте в программе должна быть настроена учётная запись электронной почты, а для работы по расписанию — разрешены регламентные задания в базе.
Выгрузка кодом
Программисту хватит нескольких строк. Отчёт на системе компоновки данных формирует результат в табличный документ, а метод Записать сохраняет его в файл нужного типа:
// Выполняется на сервере. Путь — каталог, доступный серверу 1С
Процедура ВыгрузитьОтчетВExcel(ИмяОтчета, ПутьКФайлу) Экспорт
ОтчетОбъект = Отчеты[ИмяОтчета].Создать();
ТабДок = Новый ТабличныйДокумент;
ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
// Настройки берутся из варианта по умолчанию.
// Период и отборы задают через ОтчетОбъект.КомпоновщикНастроек.
ОтчетОбъект.СкомпоноватьРезультат(ТабДок, ДанныеРасшифровки);
ТабДок.Записать(ПутьКФайлу, ТипФайлаТабличногоДокумента.XLSX);
КонецПроцедуры
Процедуру вешают на регламентное задание, и файл появляется в папке по расписанию. У многих типовых отчётов есть обязательные параметры (организация, период): без них результат будет пустым, поэтому их заполняют до вызова СкомпоноватьРезультат.
Тот же метод Записать работает для любого табличного документа — печатной формы, результата запроса, выведенного в макет. Константа типа файла меняется на ТипФайлаТабличногоДокумента.PDF или .DOCX, если нужен другой формат.
7. Ошибки при сохранении и как их снять
Большая часть сбоев — не ошибки 1С, а конфликт с файлом или с Excel. Подберите свой симптом: