Выделение столбца в 1С: мышь, клавиши, перенос в Excel и код
Содержание
Чтобы выделить колонку в 1С, щёлкните по заголовку столбца в отчёте или табличном документе: выделится весь столбец сверху донизу. Несколько столбцов подряд — щелчок по первому заголовку, затем Shift + щелчок по последнему. В обычном списке документов колонку целиком выделить нельзя: там выделяются строки, а нужный столбец переносят через Еще → Вывести список.
Отсюда и вся путаница: в 1С два разных вида таблиц, и приёмы для них разные. Если перепутать, щелчок по заголовку просто отсортирует журнал, а колонка так и не выделится.
Где вы выделяете: список или табличный документ
Первое, что нужно понять: таблица на экране в 1С бывает двух типов.
| Признак | Таблица формы (список, табличная часть) | Табличный документ (отчёт, печатная форма) |
|---|---|---|
| Где встречается | Журналы документов, справочники, строки «Товары» в документе | Результат отчёта, печатная форма, файл .mxl |
| Заголовки колонок | Названия полей: «Дата», «Номер», «Сумма» | Номера или буквы столбцов (если включены) |
| Что выделяется | Строки целиком, одна текущая ячейка | Любые ячейки, строки и столбцы, как в Excel |
| Можно выделить столбец | Нет | Да |
| Сумма выделенного | Не показывается | Показывается в панели отчёта |
Простая проверка: щёлкните по заголовку колонки. Если таблица отсортировалась по этому полю — это таблица формы. Если столбец закрасился выделением — табличный документ.
Как выделить столбец в отчёте и табличном документе
Отчёт в 1С 8.3 — это табличный документ. Он ведёт себя почти как лист Excel: ячейки, строки, столбцы, объединения.
Включите заголовки столбцов
В сформированном отчёте заголовки строк и столбцов по умолчанию часто скрыты. Без них выделять колонку неудобно. Команда показа заголовков и сетки находится в меню Еще над отчётом, в группе настроек отображения табличного документа. В печатных формах и открытых файлах .mxl заголовки обычно видны сразу.
Приёмы выделения мышью
- 🖱️ Один столбец. Щёлкните по его заголовку. Выделится вся колонка, включая пустые ячейки ниже таблицы.
- ↔️ Несколько столбцов подряд. Щёлкните по заголовку первого, зажмите Shift и щёлкните по заголовку последнего. Можно и протянуть мышью по заголовкам.
- ➕ Столбцы не подряд. Выделите первый, затем зажмите Ctrl и щёлкайте по остальным заголовкам.
- 📏 Часть столбца. Щёлкните по первой ячейке диапазона, зажмите Shift и щёлкните по последней. Так удобно взять, например, только суммы без строки «Итого».
Если нужна колонка без шапки и итогов — выделяйте не заголовок столбца, а диапазон ячеек от первой строки данных до последней. При вставке в Excel не придётся удалять лишнее.
Сумма и количество по выделенной колонке
Выделите числовой столбец — в панели отчёта появится сумма выделенных ячеек. Щёлкните по этому полю: можно переключиться на количество, среднее, минимум или максимум.
Это самый быстрый способ проверить итог по колонке без выгрузки. Например, сверить сумму по контрагентам в оборотно-сальдовой ведомости с итоговой строкой: если цифры расходятся, в отчёте есть скрытые или свёрнутые строки.
Свёрнутые группировки тоже попадают в выделение столбца. Если в отчёте видны и группы, и детальные записи, сумма по колонке посчитает одни и те же деньги дважды. Выделяйте диапазон только по строкам одного уровня.
Как выделить колонку в списке и табличной части
В журнале документов или справочнике выделения столбца нет. Ячейка там одна — текущая, а выделяются строки.
Выделение строк в списке
- 🔹 Одна строка — щелчок по ней.
- 🔹 Диапазон строк — щелчок по первой, Shift + щелчок по последней. Или Shift + стрелки вверх/вниз.
- 🔹 Строки вразброс — Ctrl + щелчок по каждой.
- 🔹 Все строки — Ctrl+A.
Множественное выделение работает, только если у таблицы включён соответствующий режим. В большинстве журналов документов и справочников он включён. Если Shift и Ctrl не срабатывают — в этой форме разработчик разрешил выделять одну строку.
Как получить из списка одну колонку
Главный приём — команда Еще → Вывести список:
- Откройте журнал или справочник. При необходимости поставьте отбор, чтобы осталось только нужное.
- Нажмите
Еще → Вывести список. - В окне снимите флажки со всех колонок, кроме нужной. Флажок «Только выделенные» оставляет в выгрузке только выделенные строки.
- Выберите вывод в табличный документ и нажмите «ОК».
- В открывшемся документе щёлкните по заголовку столбца — колонка выделена и готова к копированию.
Так же работает табличная часть внутри документа: над строками «Товары» или «Услуги» есть своё меню Еще с командой Вывести список.
В выведенном списке тоже показывается сумма выделенных ячеек. Это быстрый способ посчитать, например, сумму по 40 отмеченным счетам без отчёта.
Как скрыть или вернуть колонку в списке
Иногда «выделить колонку» нужно, чтобы убрать лишнее. В списке это делается настройкой формы:
Еще → Изменить форму.- В дереве элементов снимите флажок с ненужной колонки или поставьте на скрытую.
- Порядок колонок меняется стрелками вверх/вниз.
- «ОК» — настройка сохранится для вашего пользователя.
Вернуть всё как было: в том же окне Еще → Установить стандартные настройки.
Горячие клавиши для выделения
Клавиатура быстрее мыши, когда таблица длинная и до последней строки нужно прокручивать.
| Действие | Табличный документ (отчёт) | Список, табличная часть |
|---|---|---|
| Расширить выделение | Shift + стрелки | Shift + стрелки вверх/вниз |
| Выделить всё | Ctrl+A | Ctrl+A |
| Добавить к выделению | Ctrl + щелчок | Ctrl + щелчок |
| Диапазон | Shift + щелчок | Shift + щелчок |
| Скопировать | Ctrl+C | Ctrl+C |
| В начало / в конец | Ctrl+Home / Ctrl+End | Ctrl+Home / Ctrl+End |
| Поиск по таблице | Ctrl+F | Ctrl+F |
Практичный сценарий для длинного отчёта: встаньте в первую ячейку колонки с данными, затем зажмите Shift и жмите PageDown, пока не дойдёте до конца. Это надёжнее, чем тянуть мышью через 3000 строк.
Ctrl+F в отчёте ищет текст по ячейкам. Найдите, например, «Итого» — и сразу увидите, где заканчиваются данные колонки.
Копирование и выгрузка выделенного столбца в Excel
Выделили колонку — дальше обычно нужно её перенести. Способов три, и у каждого свои особенности.
| Способ | Когда подходит | Подвох |
|---|---|---|
| Ctrl+C → Ctrl+V в Excel | Быстро перенести 1–2 столбца | Числа могут вставиться как текст |
| Сохранить отчёт в .xlsx | Нужны числа, которые Excel посчитает | Сохраняется весь отчёт, лишнее удалять вручную |
Вывести список → сохранить | Колонка из журнала или справочника | Пустые колонки нужно снять заранее |
Копирование через буфер обмена
Выделите колонку, нажмите Ctrl+C, перейдите в Excel и нажмите Ctrl+V. Табличный документ передаёт и значения, и оформление: шрифт, заливку, границы.
Если оформление мешает — в Excel вставляйте через «Специальная вставка → Значения» или Ctrl+Shift+V в Google Таблицах.
Почему суммы не считаются после вставки
Частая жалоба: колонку скопировали, а СУММ в Excel даёт ноль. Причина — разделитель разрядов. 1С выводит число 125 400,50 с неразрывным пробелом между тысячами, и Excel принимает такую ячейку за текст.
Что сделать:
- ✅ Сохранить отчёт целиком в .xlsx (
Еще → Сохранить какили значок дискеты) — числа придут числами. - ✅ Или в Excel выделить колонку и через «Найти и заменить» заменить неразрывный пробел (в поле «Найти» нажмите Alt+0160 на цифровой клавиатуре) на пустоту.
- ✅ Или в настройках отчёта убрать разделение разрядов, если такая настройка есть у этого отчёта.
Сохранение в файл
Для регулярных выгрузок удобнее сохранять сразу в файл. При сохранении табличного документа доступны форматы xlsx, xls, ods, pdf, mxl, html, txt и другие. Для передачи в Excel берите xlsx: он сохраняет числа, ширину колонок и объединения.
Особенности веб-клиента и тонкого клиента
В тонком клиенте все приёмы выше работают без ограничений. В веб-клиенте отличий три.
- 🌐 Буфер обмена. Браузер может спросить разрешение на доступ к буферу. Если Ctrl+C ничего не копирует — проверьте, не заблокировал ли браузер этот доступ для адреса базы.
- 🌐 Перехват клавиш. Часть сочетаний браузер оставляет себе: Ctrl+N открывает новое окно, Ctrl+W закрывает вкладку, Ctrl+F может открыть поиск браузера вместо поиска 1С. Щёлкните сначала внутрь таблицы, чтобы фокус был в 1С.
- 🌐 Сохранение файлов. «Сохранить как» скачивает файл через браузер, в папку загрузок. Для работы с файлами в некоторых браузерах платформа попросит установить расширение для работы с файлами.
Если в веб-клиенте выделение по Shift + щелчок ведёт себя странно (выделяется текст страницы, а не ячейки) — обновите страницу и откройте отчёт заново. Обычно это сбой фокуса, а не настройки.
Почему колонка не выделяется: причины и решения
Ещё одна ловушка — свёрнутые группировки. Если вы свернули группу по «+» и выделили столбец, свёрнутые строки всё равно попадут в копирование. Перед копированием разверните отчёт полностью или выделяйте только видимые строки.
Программное выделение в режиме 1С:Предприятия
Эта часть — для тех, кто дорабатывает формы и обработки. В коде формы есть доступ к выделенным строкам списка и выделенным областям табличного документа.
Выделенные строки и текущая колонка списка
У таблицы формы есть свойство ВыделенныеСтроки — массив ключей выделенных строк — и ТекущийЭлемент, текущая колонка. Пример: собрать значения текущей колонки по выделенным строкам динамического списка.
&НаКлиенте
Процедура ЗначенияТекущейКолонки(Команда)
Таблица = Элементы.Список;
Колонка = Таблица.ТекущийЭлемент;
Если Колонка = Неопределено Тогда
Возврат;
КонецЕсли;
ИмяПоля = СтрЗаменить(Колонка.ПутьКДанным, "Список.", "");
Результат = Новый Массив;
Для Каждого Ключ Из Таблица.ВыделенныеСтроки Цикл
ДанныеСтроки = Таблица.ДанныеСтроки(Ключ);
Если ДанныеСтроки <> Неопределено Тогда
Результат.Добавить(ДанныеСтроки[ИмяПоля]);
КонецЕсли;
КонецЦикла;
Сообщить("Выделено строк: " + Формат(Результат.Количество(), "ЧН=0; ЧГ=0"));
КонецПроцедуры
ДанныеСтроки возвращает только поля, которые есть в списке. Если колонка скрыта настройкой формы, её поле может не прийти — тогда нужен запрос к базе по ссылкам из ВыделенныеСтроки.
Выделенные области табличного документа
У табличного документа есть коллекция ВыделенныеОбласти. Каждая область знает свои границы Верх, Низ, Лево, Право и тип ТипОбласти. При выделении целого столбца тип равен ТипОбластиЯчеекТабличногоДокумента.Колонки, а строки нужно брать до ВысотаТаблицы.
&НаКлиенте
Процедура СуммаВыделенныхСтолбцов(Команда)
ТабДок = Результат; // реквизит формы типа ТабличныйДокумент
Итог = 0;
Для Каждого Область Из ТабДок.ВыделенныеОбласти Цикл
Если ТипЗнч(Область) <> Тип("ОбластьЯчеекТабличногоДокумента") Тогда
Продолжить;
КонецЕсли;
Если Область.ТипОбласти = ТипОбластиЯчеекТабличногоДокумента.Колонки Тогда
СтрокаС = 1;
СтрокаПо = ТабДок.ВысотаТаблицы;
Иначе
СтрокаС = Область.Верх;
СтрокаПо = Область.Низ;
КонецЕсли;
Для НомерСтроки = СтрокаС По СтрокаПо Цикл
Для НомерКолонки = Область.Лево По Область.Право Цикл
Ячейка = ТабДок.Область(НомерСтроки, НомерКолонки);
Число = СтроковыеФункцииКлиентСервер.СтрокаВЧисло(Ячейка.Текст);
Если Число <> Неопределено Тогда
Итог = Итог + Число;
КонецЕсли;
КонецЦикла;
КонецЦикла;
КонецЦикла;
Сообщить("Сумма: " + Формат(Итог, "ЧДЦ=2; ЧГ=0"));
КонецПроцедуры
Функция СтроковыеФункцииКлиентСервер.СтрокаВЧисло есть в конфигурациях на БСП. В самописной конфигурации без БСП преобразуйте текст в число сами, предварительно убрав пробелы.
Получить целый столбец по номеру можно так: ТабДок.Область("C3") — третий столбец, ТабДок.Область("R5") — пятая строка. Через возвращённую область меняют, например, ширину колонки: ТабДок.Область("C3").ШиринаКолонки = 20.