Разработка и Конфигурация · 11 мин
Как сделать таблицу в 1С: все способы от простого к сложному
Как создать таблицу в 1С: вставка из Excel, таблица значений, табличный документ и печатная форма. Пошаговые инструкции, примеры кода, типичные ошибки и FAQ.
Вопрос «как сделать таблицу в 1С» звучит просто, но под ним скрываются четыре разные задачи: вставить данные из Excel в табличную часть документа, создать таблицу значений в коде, сформировать табличный документ для печати или настроить печатную форму с таблицей. У каждой задачи свой инструмент и свой порядок действий.
Обычному пользователю чаще всего нужно быстро перенести строки из Excel в документ «Поступление товаров» или в справочник — для этого в типовых конфигурациях есть встроенная загрузка из буфера обмена. Разработчику или продвинутому пользователю нужны программные объекты: «ТаблицаЗначений» для обработки данных в памяти и «ТабличныйДокумент» для вывода результата на экран или печать.
Ниже разобраны все четыре сценария с конкретными действиями, примерами кода и проверкой результата. Сначала определите, какая именно задача стоит перед вами, — от этого зависит выбор инструмента.
Как выбрать способ
Вставка таблицы из Excel в документ 1С
Самый частый пользовательский сценарий — перенести список товаров, контрагентов или номенклатуры из Excel в табличную часть документа. В типовых конфигурациях (Управление торговлей, ERP, Комплексная автоматизация, Бухгалтерия) в табличных частях есть кнопка «Заполнить» или команда «Загрузить из внешнего файла», а во многих документах работает вставка напрямую из буфера обмена.
Порядок действий для вставки из буфера: выделите в Excel нужный диапазон ячеек и скопируйте его (Ctrl+C). Откройте документ в 1С, перейдите на вкладку с табличной частью, установите курсор в первую строку и нажмите Ctrl+V либо выберите в меню «Ещё» команду вставки строк. Программа попытается сопоставить колонки по порядку и распознать номенклатуру по наименованию или артикулу.
Если прямой вставки нет, используйте обработку «Загрузка данных из табличного документа» — в типовых конфигурациях она находится в разделе «Администрирование» или «Покупки/Продажи» в зависимости от конфигурации. В ней вы указываете файл Excel, сопоставляете колонки файла с полями объекта и запускаете загрузку. Перед загрузкой в рабочую базу сделайте пробный прогон на копии или на небольшом объёме данных.
Создание таблицы значений в коде
Таблица значений — это программный объект для хранения и обработки данных в оперативной памяти. Она не сохраняется в базе сама по себе: живёт, пока выполняется код, а затем либо записывается в базу, либо уничтожается. Используется для промежуточных расчётов, сведения данных из разных источников, передачи результатов запроса.
Создание таблицы значений выполняется в несколько строк кода: объявляется объект, добавляются колонки с указанием типа данных, затем в цикле добавляются строки. Тип колонки важен — если не указать его, колонка примет составной тип, что замедлит обработку и может дать неожиданные результаты при сортировке и сравнении.
Таблица = Новый ТаблицаЗначений;
Таблица.Колонки.Добавить("Номенклатура", Новый ОписаниеТипов("СправочникСсылка.Номенклатура"));
Таблица.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число"));
Таблица.Колонки.Добавить("Сумма", Новый ОписаниеТипов("Число"));
НоваяСтрока = Таблица.Добавить();
НоваяСтрока.Номенклатура = СсылкаНаТовар;
НоваяСтрока.Количество = 5;
НоваяСтрока.Сумма = 1250;После заполнения таблицу можно сортировать методом «Сортировать», сворачивать (группировать с суммированием) методом «Свернуть», искать строки методами «Найти» и «НайтиСтроки», выгружать в запрос через временную таблицу. Именно таблица значений обычно стоит за табличными частями документов и динамическими списками на формах.
Вывод таблицы на экран и печать: табличный документ
Табличный документ — объект, который пользователь видит как готовую таблицу на экране или на бумаге. Любой отчёт в 1С, любая печатная форма счёта или накладной — это табличный документ. Он строится по макету: шаблону с именованными областями, в которые код подставляет данные.
Типовая схема формирования такова: создаётся макет (в конфигураторе — объект «Макет» типа «Табличный документ»), в макете выделяются области — шапка, строка, подвал. В коде создаётся новый табличный документ, из макета последовательно получаются области, в параметры областей подставляются значения, области выводятся в документ методом «Вывести».
ТабДок = Новый ТабличныйДокумент;
Макет = ПолучитьМакет("МакетОтчета");
ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
ТабДок.Вывести(ОбластьШапка);
Для Каждого СтрокаДанных Из ТаблицаДанных Цикл
ОбластьСтрока = Макет.ПолучитьОбласть("Строка");
ОбластьСтрока.Параметры.Наименование = СтрокаДанных.Наименование;
ОбластьСтрока.Параметры.Сумма = СтрокаДанных.Сумма;
ТабДок.Вывести(ОбластьСтрока);
КонецЦикла;
ТабДок.Показать("Результат");Готовый табличный документ можно показать пользователю, отправить на печать, сохранить в Excel (метод «Записать» с типом файла XLSX) или в PDF. Это основной способ обмена печатными формами с контрагентами, у которых нет доступа к вашей базе.
Настройка печатной формы с таблицей без программирования
Если нужно просто изменить существующую таблицу в печатной форме — добавить колонку, поменять шапку, убрать лишнее — не всегда нужно лезть в конфигуратор. Во многих типовых конфигурациях есть механизм пользовательских макетов: печатная форма открывается в режиме редактирования макета прямо из меню «Печать».
Путь обычно такой: откройте документ, нажмите «Печать», выберите нужную форму, затем в меню «Ещё» найдите команду «Изменить макет» (в некоторых конфигурациях — через «Администрирование» → «Печатные формы, отчеты и обработки» → «Макеты печатных форм»). Откроется табличный документ-шаблон, где можно двигать границы ячеек, менять текст и форматирование. Параметры в угловых скобках или квадратных скобках — это места подстановки данных, их имена менять нельзя.
Для более сложных доработок — новые колонки с расчётами, дополнительные итоги — потребуется внешняя печатная форма. Это файл-обработка, который подключается через «Дополнительные отчеты и обработки» без изменения конфигурации. Такой подход безопасен при обновлениях: типовая конфигурация остаётся на поддержке.
Таблица в отчёте на СКД
Если таблица нужна как аналитический отчёт — продажи по менеджерам, остатки по складам — правильный инструмент это система компоновки данных (СКД). В типовых конфигурациях многие отчёты позволяют менять структуру прямо в пользовательском режиме через кнопку «Настройки»: вы добавляете группировки строк и колонок, выбираете ресурсы (суммы, количества), и отчёт перестраивается в таблицу нужного вида.
Для вывода данных в виде именно таблицы (а не списка) в настройках СКД на вкладке структуры выберите вариант «Таблица»: в строках укажите одно измерение (например, контрагенты), в колонках — другое (например, периоды или склады). На пересечении СКД покажет значения ресурса. Это аналог сводной таблицы Excel, но работающий напрямую по данным базы без выгрузок.
- 1Откройте нужный отчёт и нажмите «Настройки» (или «Ещё» → «Изменить вариант»)
- 2В структуре отчёта выберите тип «Таблица» вместо группировок
- 3В строки таблицы добавьте первое измерение, в колонки — второе
- 4Убедитесь, что выбран нужный ресурс (сумма, количество)
- 5Сформируйте отчёт и проверьте итоги на пересечениях
- 6Сохраните вариант настроек, чтобы не настраивать заново
Проверка результата и типичные ошибки
После создания таблицы любым способом проверьте три вещи: количество строк (совпадает ли с источником), итоговые суммы (сходятся ли с Excel или с контрольным документом) и типы данных (числа не превратились ли в строки — тогда сортировка и суммирование будут работать неправильно). При загрузке из Excel классическая проблема — числа как текст и даты в неожиданном формате.
Как проверить результат
Совпадает с количеством строк в источнике
Строк меньше — часть данных не распозналась или отфильтровалась
Сходится с контрольной суммой источника
Расхождение — числа загрузились как текст или потеряны разряды
Поля заполнены, элементы открываются по клику
Пустые поля или созданные дубли элементов справочника
Все параметры подставлены, таблица не разрывается криво
Пустые квадратные скобки с именами параметров, срезанные колонки
Отдельно стоит помнить про разницу между таблицей значений и табличным документом: первая — это данные (её нельзя «показать» напрямую, только вывести на форму или в табличный документ), второй — это представление (его нельзя запросом отфильтровать или свернуть). Путаница между ними — самая частая причина ошибок у начинающих разработчиков 1С.
Что важно запомнить
Выберите инструмент под задачу: буфер обмена и обработки загрузки — для переноса из Excel, ТаблицаЗначений — для обработки в коде, ТабличныйДокумент с макетом — для печати, СКД — для аналитических таблиц. Перед массовой загрузкой делайте копию базы, после — сверяйте количество строк и итоги.
Частые вопросы
Можно ли вставить таблицу из Excel в 1С простым копированием?
Да, во многих типовых конфигурациях табличные части документов поддерживают вставку из буфера обмена: копируете диапазон в Excel и вставляете в табличную часть через Ctrl+V. Порядок колонок в Excel должен соответствовать порядку колонок в документе, иначе данные попадут не в те поля. Если команда вставки недоступна, используйте обработку загрузки данных из файла.
Чем таблица значений отличается от табличного документа?
Таблица значений — это структура данных в памяти: с ней работают методами поиска, сортировки, свёртки, её можно передать в запрос. Табличный документ — это визуальное представление для экрана и печати: у него есть ячейки, форматирование, области, но нет методов анализа данных. Обычно данные готовят в таблице значений, а выводят через табличный документ.
Как добавить колонку в печатную форму накладной без программиста?
Если конфигурация поддерживает пользовательские макеты, откройте макет печатной формы на редактирование (через меню «Печать» → «Ещё» → «Изменить макет» или через раздел администрирования) и добавьте колонку в шаблон. Но подставить в неё новое вычисляемое поле без доработки кода не получится — для этого нужна внешняя печатная форма, которую пишет разработчик.
Почему после загрузки из Excel числа не суммируются?
Почти всегда причина в том, что числа загрузились как строки: в Excel ячейки содержали текст, неразрывные пробелы или разделители, которые 1С не смогла преобразовать. Проверьте исходный файл: очистите формат ячеек, уберите пробелы, убедитесь, что в числовых колонках только цифры и разделитель дробной части. После исправления загрузите данные заново.
Можно ли сохранить сформированную таблицу из 1С в Excel?
Да, любой табличный документ (отчёт, печатная форма) сохраняется через «Файл» → «Сохранить как» с выбором формата XLSX, либо программно методом «Записать». Форматирование (границы, шрифты, объединённые ячейки) в большинстве случаев переносится корректно, но сложные макеты стоит проверить после сохранения.
Что выбрать для сводной таблицы: отчёт на СКД или выгрузку в Excel?
Если таблица нужна регулярно и по актуальным данным — настройте отчёт на СКД с типом структуры «Таблица»: он всегда показывает текущее состояние базы. Выгрузка в Excel оправдана, когда данные нужно передать стороннему человеку или дальше обрабатывать формулами Excel. Для разового анализа проще выгрузить, для повторяющегося — настроить отчёт.