Выделение строк, ячеек и текста в 1С 8.3: от Ctrl+A до выделения по условию
Содержание
Чтобы выделить всё в 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+→ — по слову.
Выделение работает только внутри одного окна и одной таблицы. Выделить строки в двух разных списках одновременно нельзя, как и выделить сразу несколько строк на разных вкладках формы.
Выделение мышью: диапазон и «через одну»
Это то, что экономит время, когда нужны не все строки, а часть:
- Щёлкните по первой нужной строке.
- Зажмите
Shiftи щёлкните по последней — выделится всё между ними. - Не отпуская
Ctrl, щёлкайте по строкам, которые нужно добавить или убрать, — например, исключить три позиции из выделенных двухсот.
Порядок важен: сначала диапазон через Shift, потом корректировка через Ctrl. Если сделать наоборот, повторный щелчок с Shift сбросит ваши исключения.
Выделение в табличных частях документов
В документе (поступление, реализация, заказ) табличная часть — это обычная таблица, и все клавиши из таблицы выше работают. Но здесь есть особенности.
Редактируемая ячейка и выделение строки
Если ячейка находится в режиме редактирования (внутри мигает курсор), Ctrl+A выделит текст ячейки, а не строки. Нажмите Esc, чтобы выйти из режима ввода без потери данных, затем Ctrl+A ещё раз.
Для выделения строки целиком щёлкните по номеру строки в крайнем левом столбце. Это не открывает ячейку на редактирование, и выделение получится чистым.
Что делать с выделенными строками
После выделения доступны действия, которые применяются ко всем строкам сразу:
- 🗑 Удаление — клавиша
Delили кнопка «Удалить» в командной панели таблицы. В табличных частях строки удаляются сразу, поэтому проверьте выделение до нажатия. - 📋 Копирование —
Ctrl+C; вставить скопированные строки можно в табличную часть другого документа с теми же колонками, а также в Excel или текстовый редактор. - ⬆ Перемещение — кнопки «Вверх» и «Вниз» в командной панели двигают выделенный блок.
Если в табличной части включена автоматическая подстановка цены, количества или счёта, вставка скопированных строк может пересчитать значения. Сверьте суммы после вставки.
Списки документов и справочников
В списках Ctrl+A выделяет строки, загруженные в данный момент. Список в 1С подгружается порциями, поэтому на очень больших объёмах (десятки тысяч записей) выделение захватит то, что программа успела подгрузить, плюс при прокрутке — новые строки. Если нужна гарантия, что в обработку попали все записи, задайте отбор так, чтобы подходящих записей было немного, и проверяйте количество после выполнения операции.
Типичные задачи с выделенными элементами:
- Пометка на удаление. Выделите нужные элементы, нажмите
Del. Программа спросит подтверждение и поставит пометку сразу на все выделенные записи. Сами объекты при этом остаются в базе — окончательно их убирает отдельная процедура удаления помеченных объектов в разделе администрирования. - Проведение документов. Выделите документы в списке и воспользуйтесь командой «Провести» в командной панели списка (она может находиться в меню «Ещё»). Документы проводятся по очереди. Те, что не прошли контроль, программа покажет в сообщениях, остальные проведутся.
- Групповое изменение реквизитов. Для справочников и документов в меню «Ещё» командной панели списка ищите команду, которая меняет выделенные элементы. Если такой команды нет, групповое изменение даёт специальная обработка из набора типовых сервисов вашей конфигурации.
- Вывод списка в файл. Команда вывода списка выгружает в табличный документ те строки, которые видны в списке с учётом отбора. Для выгрузки только части строк используйте выделение и
Ctrl+C.
Отбор вместо выделения
Если вы выделяете «все документы за январь» вручную, задача решается проще через отбор: задайте период и условие в строке поиска или в форме отбора, а затем выделяйте весь результат одним Ctrl+A. Меньше риска зацепить лишнее.
Выделение в отчётах и табличных документах
Отчёт в 1С — это табличный документ, и выделяется он как лист Excel. Здесь действуют иные правила: выделяются ячейки, а не строки.
Ctrl+Aвыделяет все ячейки листа, включая пустые.- Щелчок по заголовку строки (слева) выделяет строку целиком, щелчок по заголовку колонки (сверху) — колонку.
- Протяжка мышью по ячейкам выделяет прямоугольную область.
Ctrl+Cкопирует выделенную область; вставка в Excel сохраняет таблицу с ячейками, а не одной строкой текста.
Для быстрой проверки итогов выделите несколько числовых ячеек в отчёте: сумма выделенных значений показывается в специальном поле в правом верхнем углу формы отчёта. Это удобно, чтобы не выгружать данные в Excel ради одной суммы.
Отчёты на системе компоновки данных
В отчётах на СКД (большинство типовых отчётов) выделить можно две разные вещи:
- результат отчёта — в нём работает всё, что описано выше;
- настройки отчёта (группировки, отборы, выбранные поля) — в форме настроек это отдельные списки, и выделение там работает как в обычной таблице:
Shift/Ctrlи щелчок.
Чтобы убрать сразу несколько полей из настроек, выделите их в списке выбранных полей и нажмите Del. Перетаскивание выделенных полей мышью переносит их группой.
Выделение в обработках и нестандартных формах
В обработках, написанных под конкретную задачу, элементы часто делает разработчик. Стандартные клавиши в них работают, если таблица на форме — стандартный элемент «Таблица». Если выделение не работает , причин обычно две:
- таблица отключена от выбора строк (разработчик запретил множественное выделение в свойствах);
- вместо таблицы на форме использован набор флажков, и «выделить всё» реализовано отдельной кнопкой «Отметить все».
Отличие между выделением и пометкой флажком принципиально. Выделенная строка подсвечена; помеченная строка имеет галочку. Команда «Отметить все» ставит галочки и не связана с Ctrl+A. А вот выделение нескольких строк и нажатие Пробел в некоторых формах переключает флажки сразу у всех выделенных — проверьте на небольшом примере, прежде чем применять к сотням строк.
Когда разработчик реализует «выделить всё» кодом
Если вы сами пишете обработку и нужна кнопка «выделить все строки таблицы», то для таблицы значений общий принцип такой: перебираете строки коллекции в цикле и устанавливаете у каждой нужный реквизит, затем обновляете отображение. Пример для табличной части формы с булевым реквизитом Пометка:
&НаКлиенте
Процедура ОтметитьВсе(Команда)
Для Каждого Строка Из Объект.Товары Цикл
Строка.Пометка = Истина;
КонецЦикла;
КонецПроцедуры
Для снятия — то же самое со значением Ложь. Если строк тысячи, цикл лучше выполнить на сервере в одной серверной процедуре, чтобы не ходить на сервер на каждой итерации.
Перенос выделенного в Excel и обратно
Самый частый повод выделить всё — выгрузить данные в Excel. Порядок такой:
- Выделите нужные строки списка или область отчёта.
- Нажмите
Ctrl+C. - В Excel встаньте в ячейку A1 и нажмите
Ctrl+V.
Колонки сохраняются как есть, а числа попадают в Excel числами, если в 1С они были числовыми. Даты и ссылки приходят текстом. Обратная вставка из Excel в табличную часть работает по тому же принципу: копируйте блок ячеек, ставьте курсор в первую строку нужной колонки и вставляйте. Колонки в Excel должны идти в том же порядке, что и в табличной части, иначе значения лягут не в те реквизиты.
Что делать, если выделение не работает
Разберём симптомы и вероятные причины:
Типичные ошибки при выделении
Чаще всего ломается не само выделение, а то, что делают потом:
- ❌ Нажали
Delс выделением из десятков строк в табличной части и не проверили, что выделено. В табличной части строки удаляются сразу, откат — только закрытие документа без сохранения. - ❌ Выделили документы в списке «до конца», забыв, что часть уже была проведена вручную с корректировками. Повторное групповое проведение перезапишет движения.
- ❌ Приняли подсветку строки за выделение. Подсвеченная под курсором строка и выделенная — разные вещи, у выделенных заливка чуть темнее.
- ❌ Вставили скопированные строки в чужую табличную часть, у которой другой порядок колонок. Данные встали «не туда», и ошибка обнаружилась уже после проведения.
Простая страховка: перед любой групповой операцией посмотрите на количество выделенных строк. Если у вас нужно ровно 120 позиций, а выделено 121 — один лишний Ctrl-щелчок решит проблему.
Частые вопросы
Как выделить всё в поле ввода текста в 1С?
Ctrl+A. Если поле многострочное, выделится весь его текст, включая переносы.Можно ли выделить все строки в списке справочника, если их несколько тысяч?
Как выделить несколько строк, которые идут не подряд?
Ctrl. Повторный щелчок с Ctrl снимает выделение со строки.Почему в отчёте не выделяются строки целиком?
Что быстрее: выделить мышью или клавиатурой?
Shift + щелчок по последней строке или Ctrl+A. Для нескольких строк рядом удобнее Shift+↑ и Shift+↓.