Выделение текста, строк и ячеек в 1С:Предприятии 8.3
Содержание
Чтобы выделить весь текст в 1С, нажмите Ctrl+A — это работает в поле ввода, в модуле Конфигуратора и в табличном документе отчёта. Фрагмент выделяют мышью или стрелками с зажатым Shift, слово — двойным щелчком, а целые слова подряд — Ctrl+Shift+←/→.
Дальше всё зависит от того, где вы находитесь. В поле карточки выделение текстовое, в отчёте — по ячейкам, в списке документов — по строкам. В Конфигураторе добавляются свои клавиши для работы с блоком кода. Ниже — по каждому месту отдельно, с подводными камнями.
Сочетания клавиш для выделения: шпаргалка
Базовые сочетания в 1С те же, что в Windows. Они одинаково работают в тонком клиенте, в Конфигураторе и в большинстве полей.
| Что выделить | Клавиши |
|---|---|
| Весь текст поля, модуля или таблицы | Ctrl+A |
| Символ влево или вправо | Shift+← / Shift+→ |
| Слово целиком | двойной щелчок мышью |
| Слово влево или вправо от курсора | Ctrl+Shift+← / Ctrl+Shift+→ |
| До начала или конца строки | Shift+Home / Shift+End |
| Строку вверх или вниз | Shift+↑ / Shift+↓ |
| Экран текста вверх или вниз | Shift+PgUp / Shift+PgDn |
| До начала или конца текста | Ctrl+Shift+Home / Ctrl+Shift+End |
| Диапазон мышью | щелчок в начале, затем Shift+щелчок в конце |
💡 Приём Shift+щелчок удобнее протягивания мышью, когда фрагмент длиннее экрана. Поставьте курсор в начало, прокрутите колесом до конца и щёлкните с зажатым Shift.
Чтобы снять выделение, достаточно нажать любую стрелку без Shift или щёлкнуть в другом месте поля.
Поля ввода, списки и табличные части
Поле карточки или документа
В обычном поле (наименование, комментарий, ИНН) выделение текстовое, как в «Блокноте». Щёлкните в поле, нажмите Ctrl+A — выделится всё содержимое поля, а не формы.
Поля «только для просмотра» тоже позволяют выделить и скопировать текст. Редактировать его нельзя, но Ctrl+C работает. Так удобно забрать номер документа или реквизиты контрагента.
Исключение — надписи (декорации) на форме. Их текст не выделяется вообще, это ограничение платформы.
Список справочника или журнал документов
В списке выделяются строки, а не текст:
- 🖱️
Ctrl+щелчок — добавить или убрать отдельную строку; - 🖱️
Shift+щелчок — выделить диапазон от текущей строки до нужной; - ⌨️
Shift+↑/↓— расширить выделение с клавиатуры; - ⌨️
Ctrl+A— выделить все строки списка.
Групповое выделение нужно для массовых действий: пометить на удаление, провести, распечатать несколько документов, изменить реквизит через обработку группового изменения.
Если после Ctrl+A выделилась одна строка, значит, у этого списка разрешён только одиночный выбор. Это задаёт разработчик в свойствах таблицы формы, пользователь режим не переключит.
Табличная часть документа
В табличной части («Товары», «Услуги») работает то же правило: Ctrl и Shift с мышью выделяют строки. Двойной щелчок по ячейке открывает её на редактирование — после этого внутри ячейки уже работает текстовое выделение.
Чтобы перенести несколько строк в другой документ, в БП 3.0 и других типовых конфигурациях на базе БСП в командной панели табличной части есть команды копирования и вставки строк. Выделите строки, скопируйте, откройте другой документ и вставьте.
Как выделить текст в модуле: Конфигуратор и EDT
Конфигуратор
В редакторе модулей работают все клавиши из шпаргалки. К ним добавляются команды, которые действуют именно на выделенный блок:
| Действие с выделенным блоком | Клавиши |
|---|---|
| Сдвинуть вправо (добавить отступ) | Tab |
| Сдвинуть влево | Shift+Tab |
| Закомментировать строки | Ctrl+/ на цифровой клавиатуре |
| Снять комментарий | Ctrl+Shift+/ на цифровой клавиатуре |
| Отформатировать (выровнять отступы) | Alt+Shift+F |
| Найти в тексте | Ctrl+F |
| Найти и заменить | Ctrl+H |
| Перейти к строке по номеру | Ctrl+G |
Приём, который экономит больше всего времени: выделите слово двойным щелчком и нажмите Ctrl+F. Выделенный текст сразу подставится в строку поиска. С заменой Ctrl+H то же самое — можно поменять имя переменной во всём модуле.
💡 Перед массовой заменой имени нажмите в окне замены поиск следующего вхождения пару раз и посмотрите, что найдено. Короткое имя вроде Сумма легко зацепит СуммаНДС — включите поиск по целому слову.
Комментирование работает построчно: даже если выделена половина строки, комментарий // встанет в её начало. Цифровая клавиатура нужна обязательно. Обычная клавиша / рядом с правым Shift команду не вызывает. На ноутбуке без цифрового блока используйте команду комментирования в меню «Текст» Конфигуратора.
1C:Enterprise Development Tools
EDT построена на Eclipse и наследует её клавиши. Главное отличие от Конфигуратора — блочное (прямоугольное) выделение. Режим включается и выключается Alt+Shift+A, после чего мышью или стрелками выделяется прямоугольник: например, одна и та же колонка в двадцати строках подряд.
| Задача | Конфигуратор | EDT |
|---|---|---|
| Выделить всё | Ctrl+A | Ctrl+A |
| Прямоугольный блок | — | Alt+Shift+A, затем выделение |
| Закомментировать | Ctrl+/ (цифровая) | Ctrl+/ |
| Найти и заменить | Ctrl+H | Ctrl+F (одно окно) |
Ячейки в отчётах и табличных документах
Отчёт в 1С — это табличный документ. Здесь выделяются ячейки, а не символы.
- Щелчок по ячейке выделяет её одну.
- Протягивание мышью или
Shift+стрелки выделяют прямоугольную область. - Щелчок по серому заголовку строки (номер слева) выделяет строку целиком, по заголовку колонки (сверху) — колонку.
Ctrl+щелчок илиCtrl+протягивание добавляют ещё одну область, не снимая первую.Ctrl+Aвыделяет всю таблицу.
Если заголовки строк и колонок не видны, их отображение отключено в отчёте. Тогда выделяйте протягиванием от первой до последней ячейки нужной строки.
Сумма выделенных ячеек
В отчётах типовых конфигураций при выделении нескольких числовых ячеек справа над таблицей появляется их сумма. Так быстро сверяют итог по нескольким контрагентам без калькулятора. Несмежные области, выделенные через Ctrl, тоже попадают в сумму.
Скопировать выделенное в Excel
Выделенные ячейки копируются Ctrl+C и вставляются в Excel или Google Таблицы с сохранением сетки. Для всего отчёта надёжнее сохранить файл
: в отчёте нажмите кнопку сохранения (значок дискеты) и выберите формат .xlsx.
Числа из 1С нередко вставляются в Excel как текст. Причина — неразрывный пробел между разрядами: 1 250 000,00. Выделите столбец в Excel, откройте замену (Ctrl+H) и замените неразрывный пробел (наберите его как Alt+0160 на цифровой клавиатуре) на пустое значение.
Найти и выделить текст в отчёте
Поиск по табличному документу — Ctrl+F. Найденная ячейка становится текущей, и её можно сразу копировать. Это удобнее, чем прокручивать оборотно-сальдовую ведомость на тысячу строк в поисках одного контрагента.
Выделить строки цветом прямо в готовом отчёте нельзя, если он открыт только для просмотра. Подсветку задают в настройках отчёта через условное оформление: например, все суммы больше 100 000 — красным. Тогда она сохраняется и при следующем формировании.
Шрифт, масштаб и вид выделения
Отчёты и формы в режиме «Предприятие»
Мелкий текст в отчёте увеличивают масштабом: Ctrl + колесо мыши в табличном документе. Масштаб меняет только отображение, при печати размер шрифта остаётся прежним.
Если мелко всё — меню, формы, списки, — проблема обычно не в 1С. Проверьте масштаб в Windows: Параметры → Система → Дисплей → Масштаб. Платформа 8.3 учитывает его, и при 125–150% интерфейс становится заметно крупнее.
Цвет выделения в формах платформа берёт из стиля интерфейса. Пользователь в типовой конфигурации его не меняет.
Редактор модулей в Конфигураторе
Шрифт и цвета кода настраиваются в Сервис → Параметры. На вкладках с настройками текстов и модулей задаются:
- 🔤 шрифт и его размер — удобны моноширинные Consolas или Courier New размером 10–12;
- 📏 ширина табуляции (по умолчанию 4) — от неё зависит, как выглядит сдвиг блока через
Tab; - 🎨 цвета синтаксиса: ключевые слова, строки, комментарии, числа.
После смены шрифта откройте модуль заново, если изменения не применились к уже открытым окнам.
Буфер обмена: копирование, вставка и история
Выделенный фрагмент переносится через буфер обмена Windows. В 1С работают оба набора клавиш:
| Действие | Основное | Альтернативное |
|---|---|---|
| Копировать | Ctrl+C | Ctrl+Insert |
| Вырезать | Ctrl+X | Shift+Delete |
| Вставить | Ctrl+V | Shift+Insert |
Альтернативные сочетания выручают, когда Ctrl+C перехвачен другой программой — например, переводчиком или менеджером скриншотов.
История буфера обмена
Своей истории скопированных фрагментов у 1С нет. Её даёт Windows 10 и 11: нажмите Win+V. При первом запуске система предложит включить журнал, после этого Win+V показывает последние скопированные фрагменты. Можно вставить ИНН, скопированный пять минут назад, не возвращаясь в карточку.
💡 Закрепите в журнале Win+V то, что вставляете каждый день: реквизиты своей организации, шаблон назначения платежа. Закреплённые элементы не пропадают после перезагрузки.
Копирование объектов — это другое
F9 в списке справочника или документов копирует не текст, а сам объект: открывается новая карточка с заполненными реквизитами. Это не буфер обмена, и Ctrl+V после F9 ничего не вставит.
Выделение текста из кода: примеры для разработчика
Иногда выделение нужно сделать программно: выделить содержимое поля после заполнения, прочитать, что выделил пользователь, или посчитать выделенные ячейки в своём отчёте.
Выделить весь текст поля
У элемента формы — поля ввода — есть метод УстановитьГраницыВыделения. Позиции считаются с 1, конец указывается после последнего символа:
&НаКлиенте
Процедура ВыделитьКомментарий(Команда)
ТекущийЭлемент = Элементы.Комментарий;
ДлинаТекста = СтрДлина(Объект.Комментарий);
Элементы.Комментарий.УстановитьГраницыВыделения(1, ДлинаТекста + 1);
КонецПроцедуры
Сначала делаем поле текущим, иначе выделение не будет видно пользователю.
Прочитать выделенный фрагмент
Свойство ВыделенныйТекст того же элемента возвращает выделенную часть строки. Через него же выделение можно заменить:
&НаКлиенте
Процедура ВВерхнийРегистр(Команда)
Фрагмент = Элементы.Комментарий.ВыделенныйТекст;
Если ПустаяСтрока(Фрагмент) Тогда
Возврат;
КонецЕсли;
Элементы.Комментарий.ВыделенныйТекст = ВРег(Фрагмент);
КонецПроцедуры
Сумма выделенных ячеек табличного документа
Выделенные области доступны через свойство ВыделенныеОбласти табличного документа. При выделении целой строки или колонки границы области могут быть нулевыми, поэтому подставляем размеры таблицы:
&НаКлиенте
Функция СуммаВыделенныхЯчеек(ТабДок)
Сумма = 0;
Для Каждого Область Из ТабДок.ВыделенныеОбласти Цикл
Если ТипЗнч(Область) <> Тип("ОбластьЯчеекТабличногоДокумента") Тогда
Продолжить;
КонецЕсли;
Верх = Макс(Область.Верх, 1);
Низ = ?(Область.Низ = 0, ТабДок.ВысотаТаблицы, Область.Низ);
Лево = Макс(Область.Лево, 1);
Право = ?(Область.Право = 0, ТабДок.ШиринаТаблицы, Область.Право);
Для НомСтр = Верх По Низ Цикл
Для НомКол = Лево По Право Цикл
Текст = ТабДок.Область(НомСтр, НомКол, НомСтр, НомКол).Текст;
Текст = СтрЗаменить(Текст, Символы.НПП, "");
Текст = СтрЗаменить(Текст, " ", "");
Текст = СтрЗаменить(Текст, ",", ".");
Попытка
Сумма = Сумма + Число(Текст);
Исключение
// текст или пустая ячейка — пропускаем
КонецПопытки;
КонецЦикла;
КонецЦикла;
КонецЦикла;
Возврат Сумма;
КонецФункции
Пустые и текстовые ячейки пропускаются в Исключение. Для отчёта на десятки тысяч ячеек такой перебор на клиенте медленный — ограничьте его размером выделения или считайте по исходным данным.
Почему не выделяется или не копируется текст
Если выделение пропадает при каждом щелчке, проверьте, не открыт ли отчёт в режиме формирования: пока отчёт пересчитывается, табличный документ перерисовывается, и выделение сбрасывается. Дождитесь окончания формирования.