Выделение строк, ячеек и текста в 1С 8.3: от Ctrl+A до выделения по условию

· 9 мин

Содержание

Чтобы выделить всё в 1С, нажмите Ctrl+A. Но результат зависит от того, где стоит курсор: в поле ввода выделится текст поля, в списке или табличной части — строки, в отчёте — ячейки листа. Отсюда и главная жалоба: «Ctrl+A сработал не там» или «выделил только одну колонку».

Ниже — что выделяется в каждом месте, какими клавишами добавлять и снимать строки и что потом делать с выделенным. Всё про 1С 8.3 с интерфейсом «Такси» (платформа 8.3.2x); в старых интерфейсах клавиши те же, различаются только названия кнопок.

Почему Ctrl+A выделяет не то, что нужно

Комбинация действует на тот элемент, в котором стоит фокус. Фокус виден по рамке или мигающему курсору. Если вы только что открыли форму, фокус может стоять на первом поле, а не на таблице. Тогда Ctrl+A выделит текст в поле, и строки списка останутся нетронутыми.

Что проверить, если выделение «не берётся»:

  • 🖱 Щёлкните мышью по любой строке нужной таблицы. Так фокус гарантированно уйдёт в таблицу.
  • ⌨ Переключите раскладку. Клавиши завязаны на физическую позицию, но на некоторых удалённых рабочих столах Ctrl+A в русской раскладке приходит с задержкой или теряется. Проверьте в английской.
  • 🖥 Работаете через терминальный сервер или веб-клиент? Браузер может перехватить комбинацию и выделить всю веб-страницу. Щёлкните внутрь таблицы и повторите.
  • 🔒 Таблица в режиме «только просмотр» всё равно допускает выделение. Если не выделяется — вы не в таблице, а в панели или подписи.

Если выделилась вся страница в веб-клиенте (синяя заливка поверх формы), просто щёлкните по пустому месту и повторите комбинацию внутри таблицы.

Горячие клавиши выделения: что за что отвечает

Сводка для всех табличных элементов (списки, табличные части, отчёты):

ДействиеКлавиши или мышь
Выделить все строкиCtrl+A
Расширить выделение на строку вверх или внизShift+↑, Shift+↓
Выделить диапазон от текущей строки до нужнойShift + щелчок мышью
Добавить или убрать отдельную строкуCtrl + щелчок мышью
Выделить до начала или конца спискаShift+Home, Shift+End
Снять выделение, оставив одну строкущелчок мышью по строке без клавиш

Для текстовых полей действуют обычные правила Windows: Ctrl+A выделяет весь текст поля, Shift+← и Shift+→ двигают границу выделения по символу, а Ctrl+Shift+← и Ctrl+Shift+→ — по слову.

Выделение работает только внутри одного окна и одной таблицы. Выделить строки в двух разных списках одновременно нельзя, как и выделить сразу несколько строк на разных вкладках формы.

Выделение мышью: диапазон и «через одну»

Это то, что экономит время, когда нужны не все строки, а часть:

  1. Щёлкните по первой нужной строке.
  2. Зажмите Shift и щёлкните по последней — выделится всё между ними.
  3. Не отпуская Ctrl, щёлкайте по строкам, которые нужно добавить или убрать, — например, исключить три позиции из выделенных двухсот.

Порядок важен: сначала диапазон через Shift, потом корректировка через Ctrl. Если сделать наоборот, повторный щелчок с Shift сбросит ваши исключения.

Выделение в табличных частях документов

В документе (поступление, реализация, заказ) табличная часть — это обычная таблица, и все клавиши из таблицы выше работают. Но здесь есть особенности.

Редактируемая ячейка и выделение строки

Если ячейка находится в режиме редактирования (внутри мигает курсор), Ctrl+A выделит текст ячейки, а не строки. Нажмите Esc, чтобы выйти из режима ввода без потери данных, затем Ctrl+A ещё раз.

Для выделения строки целиком щёлкните по номеру строки в крайнем левом столбце. Это не открывает ячейку на редактирование, и выделение получится чистым.

Что делать с выделенными строками

После выделения доступны действия, которые применяются ко всем строкам сразу:

  • 🗑 Удаление — клавиша Del или кнопка «Удалить» в командной панели таблицы. В табличных частях строки удаляются сразу, поэтому проверьте выделение до нажатия.
  • 📋 Копирование — Ctrl+C; вставить скопированные строки можно в табличную часть другого документа с теми же колонками, а также в Excel или текстовый редактор.
  • ⬆ Перемещение — кнопки «Вверх» и «Вниз» в командной панели двигают выделенный блок.

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

Списки документов и справочников

В списках Ctrl+A выделяет строки, загруженные в данный момент. Список в 1С подгружается порциями, поэтому на очень больших объёмах (десятки тысяч записей) выделение захватит то, что программа успела подгрузить, плюс при прокрутке — новые строки. Если нужна гарантия, что в обработку попали все записи, задайте отбор так, чтобы подходящих записей было немного, и проверяйте количество после выполнения операции.

Типичные задачи с выделенными элементами:

  1. Пометка на удаление. Выделите нужные элементы, нажмите Del. Программа спросит подтверждение и поставит пометку сразу на все выделенные записи. Сами объекты при этом остаются в базе — окончательно их убирает отдельная процедура удаления помеченных объектов в разделе администрирования.
  2. Проведение документов. Выделите документы в списке и воспользуйтесь командой «Провести» в командной панели списка (она может находиться в меню «Ещё»). Документы проводятся по очереди. Те, что не прошли контроль, программа покажет в сообщениях, остальные проведутся.
  3. Групповое изменение реквизитов. Для справочников и документов в меню «Ещё» командной панели списка ищите команду, которая меняет выделенные элементы. Если такой команды нет, групповое изменение даёт специальная обработка из набора типовых сервисов вашей конфигурации.
  4. Вывод списка в файл. Команда вывода списка выгружает в табличный документ те строки, которые видны в списке с учётом отбора. Для выгрузки только части строк используйте выделение и Ctrl+C.

Отбор вместо выделения

Если вы выделяете «все документы за январь» вручную, задача решается проще через отбор: задайте период и условие в строке поиска или в форме отбора, а затем выделяйте весь результат одним Ctrl+A. Меньше риска зацепить лишнее.

Выделение в отчётах и табличных документах

Отчёт в 1С — это табличный документ, и выделяется он как лист Excel. Здесь действуют иные правила: выделяются ячейки, а не строки.

  • Ctrl+A выделяет все ячейки листа, включая пустые.
  • Щелчок по заголовку строки (слева) выделяет строку целиком, щелчок по заголовку колонки (сверху) — колонку.
  • Протяжка мышью по ячейкам выделяет прямоугольную область.
  • Ctrl+C копирует выделенную область; вставка в Excel сохраняет таблицу с ячейками, а не одной строкой текста.

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

Отчёты на системе компоновки данных

В отчётах на СКД (большинство типовых отчётов) выделить можно две разные вещи:

  • результат отчёта — в нём работает всё, что описано выше;
  • настройки отчёта (группировки, отборы, выбранные поля) — в форме настроек это отдельные списки, и выделение там работает как в обычной таблице: Shift/Ctrl и щелчок.

Чтобы убрать сразу несколько полей из настроек, выделите их в списке выбранных полей и нажмите Del. Перетаскивание выделенных полей мышью переносит их группой.

Выделение в обработках и нестандартных формах

В обработках, написанных под конкретную задачу, элементы часто делает разработчик. Стандартные клавиши в них работают, если таблица на форме — стандартный элемент «Таблица». Если выделение не работает , причин обычно две:

  • таблица отключена от выбора строк (разработчик запретил множественное выделение в свойствах);
  • вместо таблицы на форме использован набор флажков, и «выделить всё» реализовано отдельной кнопкой «Отметить все».

Отличие между выделением и пометкой флажком принципиально. Выделенная строка подсвечена; помеченная строка имеет галочку. Команда «Отметить все» ставит галочки и не связана с Ctrl+A. А вот выделение нескольких строк и нажатие Пробел в некоторых формах переключает флажки сразу у всех выделенных — проверьте на небольшом примере, прежде чем применять к сотням строк.

Когда разработчик реализует «выделить всё» кодом

Если вы сами пишете обработку и нужна кнопка «выделить все строки таблицы», то для таблицы значений общий принцип такой: перебираете строки коллекции в цикле и устанавливаете у каждой нужный реквизит, затем обновляете отображение. Пример для табличной части формы с булевым реквизитом Пометка:

&НаКлиенте
Процедура ОтметитьВсе(Команда)
	Для Каждого Строка Из Объект.Товары Цикл
		Строка.Пометка = Истина;
	КонецЦикла;
КонецПроцедуры

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

Перенос выделенного в Excel и обратно

Самый частый повод выделить всё — выгрузить данные в Excel. Порядок такой:

  1. Выделите нужные строки списка или область отчёта.
  2. Нажмите Ctrl+C.
  3. В Excel встаньте в ячейку A1 и нажмите Ctrl+V.

Колонки сохраняются как есть, а числа попадают в Excel числами, если в 1С они были числовыми. Даты и ссылки приходят текстом. Обратная вставка из Excel в табличную часть работает по тому же принципу: копируйте блок ячеек, ставьте курсор в первую строку нужной колонки и вставляйте. Колонки в Excel должны идти в том же порядке, что и в табличной части, иначе значения лягут не в те реквизиты.

Что делать, если выделение не работает

Разберём симптомы и вероятные причины:

Диагностика: выберите симптом

Типичные ошибки при выделении

Чаще всего ломается не само выделение, а то, что делают потом:

  • ❌ Нажали Del с выделением из десятков строк в табличной части и не проверили, что выделено. В табличной части строки удаляются сразу, откат — только закрытие документа без сохранения.
  • ❌ Выделили документы в списке «до конца», забыв, что часть уже была проведена вручную с корректировками. Повторное групповое проведение перезапишет движения.
  • ❌ Приняли подсветку строки за выделение. Подсвеченная под курсором строка и выделенная — разные вещи, у выделенных заливка чуть темнее.
  • ❌ Вставили скопированные строки в чужую табличную часть, у которой другой порядок колонок. Данные встали «не туда», и ошибка обнаружилась уже после проведения.

Простая страховка: перед любой групповой операцией посмотрите на количество выделенных строк. Если у вас нужно ровно 120 позиций, а выделено 121 — один лишний Ctrl-щелчок решит проблему.

Частые вопросы

Как выделить всё в поле ввода текста в 1С?
Поставьте курсор в поле и нажмите Ctrl+A. Если поле многострочное, выделится весь его текст, включая переносы.
Можно ли выделить все строки в списке справочника, если их несколько тысяч?
Можно, но выделятся те строки, что подгружены программой. Для групповых операций надёжнее сузить список отбором и сверить количество перед запуском.
Как выделить несколько строк, которые идут не подряд?
Щёлкайте по ним мышью, удерживая Ctrl. Повторный щелчок с Ctrl снимает выделение со строки.
Почему в отчёте не выделяются строки целиком?
Отчёт — это табличный документ, в нём выделяются ячейки и области. Строка целиком выделяется щелчком по заголовку строки слева.
Что быстрее: выделить мышью или клавиатурой?
Для большого блока — Shift + щелчок по последней строке или Ctrl+A. Для нескольких строк рядом удобнее Shift+↑ и Shift+↓.