Если при работе в Microsoft Excel вам нужно срочно удалить одну или несколько строк, но мышь внезапно отказала или вы просто хотите сэкономить время, клавиатура станет вашим главным инструментом. Нажатие Ctrl + - (минус) — это стандартный способ вызова диалога удаления, но он работает только после правильного выделения строк. Без предварительной подготовки эта комбинация просто проигнорируется программой, что часто вызывает путаницу у новичков.
Проблема усложняется, если строки содержат данные с формулами, условным форматированием или связаны с другими листами. В таких случаях простое удаление может нарушить целостность книги. Например, при удалении строки с формулой =СУММ(A1:A10) все ссылки на ячейки ниже автоматически сдвинутся, что приведёт к ошибкам в расчётах. Поэтому перед удалением критично понимать, какие именно данные затрагиваются и как это повлияет на остальную таблицу.
В этой статье мы разберём не только базовые сочетания клавиш, но и продвинутые методы — от удаления скрытых строк до автоматизации через макросы. Особое внимание уделим нюансам работы в разных версиях Excel (2010, 2016, 2019, 365) и альтернативных редакторах вроде Google Sheets или LibreOffice Calc, где горячие клавиши могут отличаться.
1. Базовый способ: удаление выделенных строк через Ctrl + -
Самый универсальный метод — использование комбинации Ctrl + - (минус на цифровой клавиатуре или в верхнем ряду). Однако перед этим необходимо правильно выделить строки. Если просто нажать Shift + Пробел, будет выбрана вся строка под курсором, но для удаления нескольких строк потребуется расширить выделение.
Алгоритм действий:
- Переместите курсор на любую ячейку в строке, которую нужно удалить.
- Нажмите
Shift + Пробел, чтобы выделить всю строку. - Для выделения нескольких строк удерживайте
Shiftи используйте клавиши↑/↓. - Нажмите
Ctrl + -и выберите в диалоговом окне "Строку" (по умолчанию обычно уже выбрано). - Подтвердите удаление клавишей
Enter.
⚠️ Внимание: Если после нажатия Ctrl + - ничего не происходит, проверьте:
- 🔹 Выделена ли хотя бы одна полная строка (не просто ячейка).
- 🔹 Не включён ли режим
Num Lock— комбинация чувствительна к этому. - 🔹 Нет ли защищённых ячеек (вкладка "Рецензирование" → "Защитить лист").
Выделите строку клавишами Shift + Пробел|Проверьте, что Num Lock выключен (если используете цифровую клавиатуру)|Убедитесь, что лист не защищён от изменений|Сохраните книгу перед массовым удалением (Ctrl + S)
-->
2. Удаление строк через контекстное меню (без мыши)
Если комбинация Ctrl + - не срабатывает (например, в некоторых локализованных версиях Excel), можно воспользоваться контекстным меню, открываемым с клавиатуры. Для этого:
- Выделите строку(и) как описано выше.
- Нажмите
Shift + F10(или клавишу "Контекстное меню" рядом сCtrlна некоторых клавиатурах). - С помощью клавиш
↑/↓выберите пункт "Удалить...". - Нажмите
Enter, затем сноваEnterдля подтверждения.
Этот метод работает во всех версиях Excel, включая Excel Online, где горячие клавиши могут быть ограничены. Главный минус — требуется на одно действие больше, чем при использовании Ctrl + -.
💡 Полезный совет: В Google Sheets контекстное меню открывается тем же Shift + F10, но пункт удаления называется "Удалить строку" (без многоточия). Диалогового окна с выбором не появляется — строка удаляется сразу.
3. Быстрое удаление нескольких несоседних строк
Если нужно удалить строки, расположенные вразброс (например, 5-ю, 10-ю и 15-ю), стандартное выделение с Shift не подойдёт. В этом случае:
- Выделите первую строку (
Shift + Пробел). - Зажмите
Ctrlи, не отпуская, выделите остальные строки тем жеShift + Пробел. - Нажмите
Ctrl + -и подтвердите удаление.
⚠️ Внимание: При таком выделении легко ошибиться и захватить лишние строки. Всегда проверяйте выделенный диапазон по подсветке заголовков строк (серый цвет). Если подсветка прерывается — значит, выделились не все нужные строки.
Альтернативный способ для опытных пользователей — использование макроса. Например, этот код удалит все строки с пустыми ячейками в столбце A:
Sub DeleteEmptyRows()
Dim i As Long
For i = Cells.Rows.Count To 1 Step -1
If Cells(i, 1).Value = "" Then
Rows(i).Delete
End If
Next i
End Sub
Как запустить макрос без мыши
Откройте редактор VBA клавишами Alt + F11|Вставьте код в модуль (Alt + I → M)|Вернитесь в Excel (Alt + Q) и запустите макрос через Alt + F8, затем выберите его клавишами ↑/↓ и нажмите Enter
4. Удаление строк с данными по условию
Допустим, вам нужно удалить все строки, где в столбце B содержится слово "Устарело". С клавиатуры это делается так:
- Выделите диапазон данных (например,
Ctrl + Shift + ↓для выделения до последней заполненной строки). - Откройте фильтр (
Ctrl + Shift + L). - Переместитесь на заголовок столбца
BклавишейTab. - Нажмите
Alt + ↓, затем выберите "Текстовые фильтры" → "Содержит...". - Введите "Устарело" и нажмите
Enter. - Выделите все видимые строки (
Ctrl + Shift + ↓), затемCtrl + -.
После удаления не забудьте снять фильтр (Ctrl + Shift + L ещё раз). Этот метод безопаснее макросов, так как позволяет предварительно увидеть, какие строки будут удалены.
| Метод | Сочетание клавиш | Когда использовать | Ограничения |
|---|---|---|---|
| Удаление текущей строки | Shift + Пробел → Ctrl + - |
Для одной строки | Не работает, если строка защищена |
| Удаление нескольких соседних строк | Shift + ↑/↓ → Ctrl + - |
Для непрерывного диапазона | Требует точного выделения |
| Удаление несоседних строк | Ctrl + Shift + Пробел (выборочно) |
Для разрозненных строк | Сложно контролировать визуально |
| Удаление по фильтру | Ctrl + Shift + L → Alt + ↓ |
Для условного удаления | Требует предварительной настройки фильтра |
5. Удаление скрытых строк и особенности
Скрытые строки (Ctrl + 9 для скрытия) удаляются так же, как и видимые, но с нюансами:
- 🔹 Если строка скрыта, её заголовок (номер) не виден, но она остаётся выделенной при использовании
Shift + Пробел. - 🔹 В Excel 2013 и новее скрытые строки подсвечиваются серым при выделении.
- 🔹 Если удалить строку над скрытой, скрытая строка станет видимой (сдвигается вверх).
Чтобы удалить только скрытые строки:
- Выделите весь лист (
Ctrl + Aдважды). - Откройте "Найти и выделить" (
Alt + H → FD). - Выберите "Выделить группу ячеек" → "Скрытые строки".
- Нажмите
Ctrl + -.
⚠️ Внимание: Этот метод удалит все скрытые строки на листе без возможности отмены (если не сохранена версия). Перед выполнением проверьте, нет ли среди них важных данных, скрытых для удобства (например, промежуточные расчёты).
Первый раз пробую|Использую иногда|Постоянно работаю без мыши|Предпочитаю мышь
-->
6. Восстановление удалённых строк и отмена действий
Если строка была удалена ошибочно, вернуть её можно:
- 🔹 Отмена действия:
Ctrl + Z(работает до закрытия файла или до 100 последних действий в зависимости от настроек). - 🔹 Версии файла: В Excel 365 откройте "Файл" → "Сведения" → "Управление книгой" → "Версии" (требуется сохранение в OneDrive).
- 🔹 Резервные копии: Если включена автосохранение (
Файл → Параметры → Сохранение), проверьте папку с резервными копиями.
Если отмена невозможна, попробуйте восстановить данные из:
- 🔹 Лога изменений (Excel 365): "Рецензирование" → "Журнал изменений".
- 🔹 Временных файлов: поиск по расширению
.tmpв папке%AppData%\Microsoft\Excel\.
💡 Полезный совет: Чтобы минимизировать риски, настройте автоматическое создание резервной копии при сохранении:
- Откройте "Файл" → "Сохранить как".
- Нажмите "Сервис" → "Общие параметры".
- Поставьте галочку "Всегда создавать резервную копию".
7. Альтернативные редакторы: Google Sheets и LibreOffice Calc
В Google Sheets и LibreOffice Calc принципы похожи, но есть различия в сочетаниях клавиш:
| Действие | Excel | Google Sheets | LibreOffice Calc |
|---|---|---|---|
| Выделить строку | Shift + Пробел |
Shift + Пробел |
Shift + Пробел |
| Удалить строку | Ctrl + - |
Alt + E → D (или Ctrl + - в новой версии) |
Ctrl + - |
| Отмена действия | Ctrl + Z |
Ctrl + Z |
Ctrl + Z |
| Контекстное меню | Shift + F10 |
Shift + F10 или Alt + \ |
Shift + F10 |
В Google Sheets после удаления строка сразу исчезает без диалогового окна, поэтому будьте осторожны. В LibreOffice Calc диалог появляется, но его можно отключить в настройках (Сервис → Параметры → LibreOffice Calc → Общие → снимите галочку "Подтверждать удаление строк").
Всегда проверяйте выделенный диапазон перед нажатием Ctrl + -. В 80% случаев ошибки происходят из-за неверного выделения, а не из-за сбоя программы.
-->
8. Автоматизация: макросы и скрипты для массового удаления
Если вам регулярно приходится удалять строки по одному критерию (например, пустые или с определённым текстом), имеет смысл записать макрос. Пример макроса для удаления строк, где в столбце C значение меньше 100:
Sub DeleteRowsByCondition()
Dim i As Long
For i = Cells.Rows.Count To 1 Step -1
If Cells(i, 3).Value < 100 Then
Rows(i).Delete
End If
Next i
End Sub
Чтобы записать макрос без ручного ввода кода:
- Нажмите
Alt + T → M → R(запись макроса). - Выполните действия вручную (выделите и удалите строку).
- Остановите запись (
Alt + T → M → Rснова). - Откройте редактор VBA (
Alt + F11), найдите записанный код и модифицируйте его под свои нужды.
Для Google Sheets аналогичные действия выполняются через Apps Script:
- Откройте "Расширения" → "Apps Script".
- Вставьте код:
function deleteRows() {var sheet = SpreadsheetApp.getActiveSheet();
var range = sheet.getDataRange();
var values = range.getValues();
for (var i = values.length - 1; i >= 0; i--) {
if (values[i][2] < 100) { // Столбец C (индекс 2)
sheet.deleteRow(i + 1);
}
}
}
- Сохраните и запустите функцию.
Назначьте макросу горячую клавишу через Alt + F8 → выберите макрос → "Параметры" → укажите букву (например, Ctrl + Shift + D).
-->
Частые вопросы (FAQ)
Можно ли удалить строку в Excel, если клавиатура без цифрового блока?
Да, используйте минус в верхнем ряду клавиш (рядом с =). Комбинация Ctrl + - сработает независимо от расположения минуса, но убедитесь, что не нажали Num Lock (он не должен гореть).
Почему после удаления строки формулы показывают #ССЫЛКА?
Это происходит, если в формулах были ссылки на ячейки удалённой строки. Например, формула =A1+A2 после удаления первой строки станет =#ССЫЛКА!+A1. Чтобы исправить, обновите ссылки вручную или используйте функцию ЕСЛИОШИБКА.
Как удалить строку в защищённом листе Excel?
Сначала снимите защиту: Alt + R → P → U (или "Рецензирование" → "Снять защиту листа"). Если не знаете пароль, воспользуйтесь макросами для взлома защиты (нелегально в корпоративных файлах!).
Есть ли разница между удалением строки и очисткой её содержимого?
Да:
- 🔹 Удаление строки (
Ctrl + -): строка исчезает, а строки ниже сдвигаются вверх. - 🔹 Очистка содержимого (
Delete): строка остаётся, но данные в ней стираются.
Удаление строки изменяет структуру таблицы, очистка — только данные.
Как удалить строки в Excel на Mac?
На macOS используйте:
- 🔹 Выделение строки:
Shift + Пробел. - 🔹 Удаление:
Command + -(минус). - 🔹 Контекстное меню:
Control + клик(илиFn + Shift + F10на некоторых клавиатурах).