Быстрый старт · 9 мин
Как в 1С вставить строку между строк
Как вставить строку между строк в 1С: горячие клавиши, команды меню, работа в табличных частях документов и табличных документах. Разбор ошибок и нюансов.
Задача вставить строку между уже существующими строками возникает в 1С постоянно: нужно добавить товар в середину спецификации счёта, внести сотрудника в табель не в конец списка, а рядом с коллегами по отделу, дописать этап в график работ. Во всех типовых конфигурациях на управляемых и обычных формах для этого есть штатные средства — горячие клавиши, команды контекстного меню и кнопки командной панели таблицы.
Главное, что нужно понимать: поведение зависит от того, с каким объектом вы работаете. Табличная часть документа (список товаров, услуг, начислений) и табличный документ (печатная форма, макет, отчёт в виде таблицы) — это разные механизмы, и вставка строки в них выполняется по-разному. Ниже разобраны оба случая, а также ситуации, когда вставка недоступна или даёт неожиданный результат.
Как вставить строку в табличную часть документа
Табличная часть — это список строк внутри документа или справочника: товары в реализации, сотрудники в кадровом приказе, начисления в документе расчёта зарплаты. Чтобы вставить строку между существующими, сначала щёлкните по строке, перед которой должна появиться новая. Курсор (выделение) определяет позицию вставки.
Далее нажмите клавишу Insert (Ins) на клавиатуре. Новая пустая строка появится выше выделенной, а выделенная и все последующие сместятся вниз. Тот же результат даёт кнопка «Добавить» на командной панели таблицы и пункт «Добавить» в контекстном меню по правому щелчку мыши. В большинстве типовых конфигураций добавление по Insert идёт именно «перед текущей строкой», а не в конец списка — это удобно, когда нужно сохранить логический порядок позиций.
Если новая строка должна быть похожа на существующую, быстрее использовать копирование: выделите строку-образец и нажмите F9 или кнопку «Скопировать». Копия вставится перед текущей строкой, и вам останется изменить только отличающиеся поля — количество, цену или номенклатуру.
- 1Откройте документ и перейдите на вкладку с нужной табличной частью
- 2Щёлкните по строке, выше которой нужно вставить новую
- 3Нажмите Insert или кнопку «Добавить» на командной панели
- 4Заполните поля новой строки
- 5Проверьте порядок строк и сохраните документ
Горячие клавиши и команды меню
Работа со строками в 1С хорошо поддерживается с клавиатуры, что заметно ускоряет ввод больших документов. Основные сочетания одинаковы в большинстве конфигураций, как в тонком клиенте, так и в веб-клиенте.
- Insert (Ins) — добавить новую строку перед текущей;
- F9 — скопировать текущую строку со всеми заполненными полями;
- Shift+F2 — удалить текущую строку (в ряде конфигураций работает и Delete);
- Ctrl+Shift+F9 — удалить все строки табличной части;
- Ctrl+End / Ctrl+Home — быстрый переход в конец или начало списка строк.
Помимо клавиатуры, все действия доступны через кнопку «Ещё» на командной панели таблицы: там находятся команды «Добавить», «Скопировать», «Удалить», а также «Переместить вверх» и «Переместить вниз» для изменения порядка уже введённых строк. Если вы ошиблись с позицией вставки, не обязательно удалять строку — проще поднять или опустить её этими командами.
Как вставить строку в табличный документ и печатную форму
Табличный документ — это объект вроде печатной формы, макета или сохранённого отчёта, похожий на лист Excel. Здесь строки вставляются иначе, чем в табличной части, и логика ближе к работе с электронными таблицами.
Чтобы вставить строку между строк, щёлкните правой кнопкой мыши по заголовку (серой области с номером) той строки, над которой нужно добавить новую, и выберите в контекстном меню команду «Вставить». Пустая строка появится выше выбранной. Аналогично работает пункт главного меню «Таблица» → «Вставить» → «Строки», если табличный документ открыт на редактирование. Чтобы вставить сразу несколько строк, предварительно выделите нужное количество строк, протянув по их заголовкам, — вставится столько же.
Учтите важное ограничение: печатные формы документов в типовых конфигурациях обычно открываются в режиме «только просмотр», и редактировать их напрямую нельзя. Чтобы вставить строку, сначала нажмите кнопку «Изменить» (или снимите защиту через меню «Ещё» → «Изменить»), если конфигурация это позволяет. Правки ручной печатной формы не сохраняются в данных документа — при повторном формировании печатной формы вставленная строка исчезнет.
Почему строка не вставляется: типичные причины
Иногда команда добавления недоступна или не даёт результата. Чаще всего причины следующие: документ открыт в режиме просмотра без перехода в редактирование, табличная часть заполняется автоматически (например, подбором или по кнопке «Заполнить») и ручное добавление в ней заблокировано разработчиками конфигурации, либо у пользователя нет прав на изменение этого документа.
Ещё одна частая ситуация — строка вставляется не туда, куда ожидалось. Это происходит, когда курсор стоял не на той строке: вставка всегда выполняется перед выделенной строкой, поэтому перед нажатием Insert проверяйте, какая строка подсвечена. В динамических списках и формах списка (например, в журнале документов) вставка строки между строк в принципе невозможна — там записи сортируются по заданному критерию, и «место» новой записи определяется сортировкой, а не пользователем.
Вставка строки программно (для разработчиков)
Если строку нужно добавить из кода — в обработке, расширении или процедуре заполнения — используется метод коллекции табличной части Вставить(), которому передаётся индекс позиции. Индексация начинается с нуля, поэтому для вставки перед первой строкой указывается индекс 0.
НоваяСтрока = Объект.Товары.Вставить(1); // вставка второй по счёту
НоваяСтрока.Номенклатура = НужнаяНоменклатура;
НоваяСтрока.Количество = 1;Метод Вставить(Индекс) сдвигает существующие строки вниз и возвращает новую строку, которую сразу можно заполнить. Если позиция не важна, используйте Добавить() — строка встанет в конец. При массовой вставке в цикле помните, что индексы строк после каждой вставки смещаются, поэтому надёжнее либо вставлять с конца списка, либо пересчитывать индекс на каждой итерации.
Как проверить результат
Строка стоит перед той, на которой был курсор, остальные сместились вниз без потери данных
Строка добавилась в конец списка или заменила существующую
После записи и повторного открытия документа строка на месте
Строка исчезла — вероятно, редактировалась печатная форма, а не табличная часть
Суммы и количество пересчитались с учётом новой строки
Итоги не изменились — строка не заполнена или не попала в учётные данные
FAQ
Как вставить сразу несколько строк между существующими?
В табличной части документа штатной вставки нескольких строк за одно действие нет — нажмите Insert нужное число раз или несколько раз скопируйте строку-образец через F9. В табличном документе можно выделить несколько строк по заголовкам и выполнить «Вставить» — добавится столько же пустых строк.
Почему новая строка появляется в конце, а не между строк?
Так бывает, если курсор не установлен на конкретную строку (например, фокус на поле вне таблицы) или если конфигурация переопределила поведение команды добавления. Щёлкните именно по строке табличной части и повторите вставку. Лишнюю строку в конце можно поднять командами «Переместить вверх».
Можно ли вставить строку в журнал документов между двумя документами?
Нет. Журнал — это динамический список, порядок в котором определяется сортировкой по дате, номеру или другой колонке. Новый документ создаётся кнопкой «Создать» и занимает место согласно сортировке; произвольно разместить его между двумя записями нельзя.
Кнопка «Добавить» неактивна, что делать?
Проверьте три вещи: открыт ли объект на редактирование, а не только на просмотр; есть ли у вашей роли права на изменение; не заполняется ли табличная часть автоматически — в таких таблицах ручное добавление часто заблокировано, и строки вносятся через подбор или команду «Заполнить».
Как изменить порядок строк после вставки?
Выделите строку и используйте команды «Переместить вверх» / «Переместить вниз» в меню «Ещё» командной панели таблицы или соответствующие кнопки со стрелками. Перетаскивание мышью для строк табличных частей в типовых формах, как правило, не поддерживается.
Сохранится ли вставленная в печатную форму строка?
Нет. Ручные правки печатной формы живут только в текущем открытом окне: при повторном формировании она будет построена заново из данных документа. Чтобы строка сохранилась, добавьте её в табличную часть документа и затем сформируйте печатную форму ещё раз.
Что важно запомнить
В табличной части документа строка вставляется клавишей Insert или кнопкой «Добавить» перед выделенной строкой; в табличном документе — через контекстное меню заголовка строки. Печатные формы редактировать вручную не следует: правки теряются, корректное место для добавления строки — сам документ. Если вставка недоступна, проверьте режим редактирования, права и способ заполнения табличной части.