К статье
Практический материал

Справочники и Данные · 12 мин

Как изменить текст ячейки в 1С

Как изменить текст ячейки в 1С: редактирование табличного документа, макета и программное изменение через встроенный язык. Пошаговые инструкции и типичные ошибки.

Фраза «изменить текст ячейки» в 1С может означать три разные задачи: правку значения в строке табличной части документа, редактирование табличного документа (печатной формы или отчёта) и программное изменение области макета через встроенный язык. Способ действий зависит от того, где именно находится ячейка и какой у вас режим работы — обычный пользовательский или с доступом к конфигуратору.

Ошибка новичков — пытаться править печатную форму документа «напрямую», ожидая, что изменения сохранятся в базе. Табличный документ в 1С — это результат вывода, а не хранилище данных: после закрытия окна правки пропадут. Поэтому сначала нужно определить, что именно вы редактируете: данные объекта, сформированный отчёт или шаблон печатной формы.

Ниже разобраны все основные сценарии: от простого ввода текста в таблицу документа до программного изменения области макета через свойство Текст и параметры. Для каждого случая указаны условия применения, ограничения и способ проверить результат.

Определяем, какая именно ячейка нуждается в правке

Перед изменением текста важно понять тип объекта, с которым вы работаете. В 1С ячейки встречаются в трёх принципиально разных контекстах, и механика правки у них разная.

Первый случай — табличная часть документа или справочника: строки товаров в накладной, сотрудники в приказе. Здесь ячейка хранит реальные данные, и её изменение записывается в информационную базу при проведении или записи объекта.

Второй случай — табличный документ: сформированная печатная форма, отчёт, акт сверки. Это «картинка» результата. Ячейки можно править вручную, но изменения живут только в открытом окне и теряются при перезапуске формирования отчёта.

Третий случай — макет (шаблон) печатной формы в конфигураторе или внешняя печатная форма. Здесь правка текста меняет сам шаблон, и все документы, выводимые по нему после изменения, получат новый текст.

Маршрут решения

Как выбрать действие

Ячейка в таблице документа (товары, услуги)Редактируйте прямо в форме документа и запишите объект
Ячейка в сформированной печатной форме или отчётеПравьте вручную через F2, но помните: изменения не сохранятся в базе
Нужно изменить текст во всех будущих печатных формахПравьте макет в конфигураторе или подключите внешнюю печатную форму
Текст формируется программно при выводеМеняйте значение параметра макета или свойство Текст области в коде

Изменение текста ячейки в табличной части документа

Это самый простой сценарий. Откройте документ, перейдите на вкладку с табличной частью (например, «Товары»), установите курсор в нужную ячейку и нажмите F2 или дважды щёлкните мышью — ячейка перейдёт в режим редактирования. Введите новый текст и нажмите Enter или кликните в другую ячейку.

Учтите тип данных колонки. Если колонка ссылается на справочник (номенклатура, контрагент), произвольный текст ввести нельзя — система предложит выбрать элемент из списка или создать новый. Произвольный текст допустим только в строковых колонках: комментарий, содержание операции, дополнительное описание.

После правки обязательно запишите документ кнопкой «Записать» или «Провести». Если закрыть форму без записи, платформа спросит о сохранении — но при отказе изменения будут потеряны. Если документ уже проведён и участвует в движениях по регистрам, правка может потребовать перепроведения.

Редактирование ячейки в табличном документе (печатной форме)

Когда печатная форма уже сформирована и открыта на экране, текст любой ячейки можно поправить вручную. Щёлкните по ячейке правой кнопкой мыши и выберите «Свойства» либо просто нажмите F2 — в зависимости от версии платформы и настроек. В некоторых конфигурациях редактирование включено по умолчанию, в других табличный документ открывается в режиме «только просмотр».

Если ячейка не редактируется, проверьте свойство табличного документа «Только просмотр». В пользовательском режиме его иногда можно снять через меню «Таблица» — «Вид» — «Редактирование» (в старых версиях интерфейса) или через контекстное меню. Если возможность заблокирована разработчиком программно, ручная правка будет недоступна.

Главное ограничение: исправленный текст существует только в открытом окне. При повторном формировании печатной формы или отчёта все ручные правки исчезнут — документ строится заново из данных и макета. Поэтому ручное редактирование годится лишь для разовой печати с исправлением, а не для постоянного изменения формы.

Программное изменение текста ячейки через встроенный язык

Разработчики и администраторы с доступом к коду меняют текст ячейки программно. Табличный документ в 1С состоит из областей, и у каждой области есть свойство Текст. Обратиться к ячейке можно по имени области или по координатам.

Базовый пример: получить область по адресу и присвоить ей новый текст.

ТабДок = Новый ТабличныйДокумент;

// ... вывод макета ...

ОбластьЯчейки = ТабДок.Область("R5C3"); // строка 5, колонка 3

ОбластьЯчейки.Текст = "Новый текст ячейки";

Если в макете ячейка содержит параметр (в шаблоне он обозначается квадратными скобками, например [НаименованиеОрганизации]), правильнее менять не текст, а значение параметра — тогда форматирование и шаблон сохранятся:

ОбластьШапка = Макет.ПолучитьОбласть("Шапка");

ОбластьШапка.Параметры.НаименованиеОрганизации = "ООО «Пример»";

ТабДок.Вывести(ОбластьШапка);

Разница принципиальна: свойство Текст заменяет содержимое ячейки целиком, включая шаблон с параметрами, а заполнение параметров подставляет значения в подготовленный шаблон. Если после вывода области обратиться к Область.Текст и перезаписать её, вложенные параметры этой ячейки уже не обработаются.

bsl
Область = ТабДок.Область("R2C1:R2C4");
Область.Текст = "Итого по документу";
Область.Шрифт = Новый Шрифт(, , Истина); // жирный

Изменение текста в макете печатной формы

Чтобы новый текст появлялся во всех будущих печатных формах, править нужно макет. Откройте конфигуратор, найдите нужный макет (у документа, отчёта или в общих макетах), дважды щёлкните по нему — откроется табличный документ-шаблон. Установите курсор в ячейку и измените текст в строке формул или прямо в ячейке.

Обратите внимание на тип содержимого ячейки в макете: фиксированный текст, параметр или шаблон. Если ячейка содержит шаблон с параметрами, правьте текст вокруг них аккуратно, не нарушая квадратные скобки — иначе параметр перестанет заполняться, и в печатной форме появится пустое место или само имя параметра.

Если конфигурация типовая и находится на поддержке, прямое изменение макета приведёт к снятию объекта с полной поддержки и усложнит обновления. В этом случае предпочтительнее механизм внешних печатных форм: макет копируется во внешнюю обработку, правится там и подключается через «Дополнительные отчёты и обработки», а типовая конфигурация остаётся нетронутой.

Сравнение вариантов

Ручная правка ячейки в форме

Подходит для разового исправления перед печатью; не сохраняется в базе и теряется при переформировании

Правка макета в конфигураторе

Постоянное изменение для всех документов; требует прав разработчика и снимает объект с полной поддержки

Внешняя печатная форма

Постоянное изменение без затрагивания типовой конфигурации; требует навыков создания внешних обработок

Программное изменение в коде

Гибкая подстановка текста по условиям; применяется только там, где есть доступ к модулю формирования

Частые ошибки и как их избежать

Самая распространённая ошибка — ожидание, что ручная правка печатной формы сохранится. Пользователь исправляет текст в сформированном счёте, закрывает окно, а на следующий день формирует документ заново и видит старый текст. Правило простое: данные правятся в объекте, шаблон — в макете, а ручная правка табличного документа — только разовая мера.

Вторая типичная проблема — попытка вписать произвольный текст в ячейку ссылочного типа в табличной части. Платформа не даст этого сделать и либо откроет список выбора, либо начнёт поиск по введённой строке. Если нужного элемента нет, его сначала создают в соответствующем справочнике.

У разработчиков частая ошибка — обращение к области по неверному имени или координатам после того, как структура табличного документа изменилась. Именованные области надёжнее координат вида R5C3: при добавлении строк в макет координаты «съезжают», а имя остаётся прежним.

Типичные ошибки
01
Ручная правка печатной формы с ожиданием сохранения — изменения теряются при повторном формировании
02
Перезапись свойства Текст у ячейки с параметрами — шаблон разрушается, параметры перестают заполняться
03
Обращение к ячейке по координатам после изменения макета — правится не та область
04
Правка типового макета вместо внешней печатной формы — сложности при обновлении конфигурации
05
Попытка ввести текст в ссылочную колонку — платформа требует выбора элемента справочника

Проверка результата и ограничения

После правки табличной части документа проверка проста: запишите объект, закройте и откройте его заново — новый текст должен остаться на месте. Если текст сбросился, значит, документ не был записан либо изменения откатились при отмене проведения.

Для программного изменения проверяйте результат, выводя табличный документ на экран или в файл перед реальным использованием. Убедитесь, что область с указанным именем существует: обращение к несуществующей области вернёт неопределённое значение, и присвоение текста вызовет ошибку выполнения.

Для макетов контрольный признак — вновь сформированная печатная форма. Создайте тестовый документ, выведите печатную форму и убедитесь, что текст обновился, параметры заполняются, а форматирование (шрифт, границы, объединение ячеек) не пострадало.

Контрольные точки

Как проверить результат

Текст в табличной части документа
Норма

После записи и повторного открытия новый текст на месте

Тревожный признак

Текст сброшен — объект не был записан

Ячейка в сформированной печатной форме
Норма

Текст изменён на экране, документ напечатан сразу

Тревожный признак

Ожидание, что правка сохранится после закрытия окна

Программное изменение области
Норма

Область найдена, текст выведен в табличный документ

Тревожный признак

Ошибка «Поле объекта не обнаружено» — неверное имя области

Правка макета
Норма

Новая печатная форма содержит обновлённый текст, параметры заполняются

Тревожный признак

В форме видно имя параметра в скобках — нарушен шаблон

Итог

Что важно запомнить

Способ изменения текста ячейки зависит от контекста: данные правятся в форме объекта с записью, печатная форма — только для разового вывода, постоянные изменения делаются в макете или внешней печатной форме, а программно текст меняется через свойство Текст области или параметры макета.

Ответы на частые вопросы

Почему ячейка в табличном документе не редактируется?

Чаще всего у табличного документа включён режим «Только просмотр» — он может быть задан в свойствах формы или установлен программно разработчиком. Также проверьте, что окно не открыто в режиме предварительного просмотра перед печатью, где редактирование недоступно по определению.

Сохранится ли исправленный вручную текст в печатной форме?

Нет. Табличный документ формируется заново из данных объекта и макета при каждом выводе. Ручная правка существует только в открытом окне, поэтому печатайте документ сразу после исправления, а для постоянных изменений правьте макет или данные.

Чем отличается свойство Текст от параметров макета?

Свойство Текст заменяет всё содержимое ячейки целиком, включая встроенный шаблон. Параметры подставляют значения в заранее подготовленные места шаблона, сохраняя остальной текст и форматирование. Для ячеек с параметрами правильнее заполнять параметры, а не перезаписывать текст.

Можно ли изменить текст ячейки без доступа к конфигуратору?

Да, в нескольких случаях: правка данных в форме документа, ручное редактирование сформированной печатной формы, а также подключение внешней печатной формы через механизм дополнительных отчётов и обработок — последний вариант требует готового файла обработки, но не изменения конфигурации.

Что делать, если после правки макета в форме выводится имя параметра в квадратных скобках?

Это признак нарушенного шаблона: код, который заполнял параметр, больше не находит его, либо в макете повреждены квадратные скобки. Откройте макет, проверьте целостность конструкции с параметром и убедитесь, что в модуле формирования параметр заполняется по точному имени.

Как изменить текст сразу в нескольких ячейках табличного документа?

В пользовательском режиме — только по одной ячейке, массовой правки в сформированном табличном документе нет. Программно можно выделить объединённую область (например, R2C1:R10C1) и в цикле или через одну область присвоить текст, либо править макет, если ячейки однотипные.