Excel: удаление символов, слов, чисел из текстовых строк
Если у вас есть список текстовых строк в Excel, содержащих ненужные символы, числа или знаки, возможно, потребуется удалить определенные элементы по их позиции или типу. Независимо от того, нужно ли вам удалить символы слева, справа или из середины, либо избавиться от конкретных символов и чисел, Excel предлагает несколько способов очистки данных. В этом руководстве представлены пошаговые методы с использованием формул, пользовательских функций (UDF) и встроенных инструментов для легкого удаления ненужных символов, слов и чисел из ваших текстовых строк.
Содержание:
1. Удалить символы слева, справа или из середины текстовых строк
2. Удалить ненужные / специальные символы из текстовой строки
- 2.1 Удалить некоторые специальные символы из текстовых строк
- 2.2 Удалить все числа из текстовых строк
- 2.3 Удалить нечисловые символы из текстовых строк
- Удалить нечисловые символы из текстовых строк с помощью формулы в Excel2016 и более ранних версиях
- Удалить нечисловые символы из текстовых строк с помощью функции TEXTJOIN в Excel2019,2021,365
- Удалить нечисловые символы из текстовых строк с помощью пользовательской функции
- Удалить нечисловые символы из текстовых строк с помощью простой функции
- 2.4 Разделить текст и числа из одной ячейки на два столбца
- 2.5 Удалить символы разрыва строки из текстовых строк
- Удалить символы разрыва строки из текстовых строк с помощью функции Поиск и Замена
- Удалить символы разрыва строки из текстовых строк с помощью функции SUBSTITUTE
- Удалить символы разрыва строки из текстовых строк с помощью VBA-кода
- Удалить символы разрыва строки из текстовых строк с помощью умной опции
- 2.6 Удалить пробелы (в начале, в конце, лишние или все пробелы) из текстовых строк
3. Удалить символы / текст до или после определенного символа
- 3.1 Удалить текст до или после первого определенного символа
- 3.2 Удалить текст до или после N-го вхождения символа
- 3.3 Удалить текст до или после последнего вхождения символа
- 3.4 Удалить текст между скобками
Удалить символы слева, справа или из середины текстовых строк
Для большинства пользователей задача удаления символов слева, справа или из середины текстовых строк в Excel является довольно распространенной. В этом разделе представлены быстрые и простые способы решения этой задачи.
1.1 Удалить первые n символов из текстовых строк
Если вам нужно удалить первые n символов из списка текстовых строк, воспользуйтесь одним из следующих методов.
С помощью формул
Обычно для удаления символов с начала текстовых строк можно использовать либо функцию REPLACE, либо комбинацию функций RIGHT и LEN.
Функция REPLACE для удаления первых N символов:
- "string": Текстовая строка, из которой вы хотите удалить символы;
- "num_chars": Количество символов, которые нужно удалить.
Например, чтобы удалить первые2 символа из ячеек, используйте следующую формулу и протяните маркер заполнения для копирования формулы в другие ячейки, см. скриншот:
=REPLACE(A4, 1, 2, "")
Функции RIGHT и LEN для удаления первых N символов:
- "string": Текстовая строка, из которой вы хотите удалить символы;
- "num_chars": Количество символов, которые нужно удалить.
Чтобы удалить первые2 символа из ячеек, примените следующую формулу:
=RIGHT(A4,LEN(A4)-2)
С помощью пользовательской функции
Чтобы удалить первые n символов из ячеек, вы также можете создать пользовательскую функцию. Выполните следующие шаги:
1. Удерживайте клавиши "Alt + F11", чтобы открыть окно "Microsoft Visual Basic for Applications".
2. Нажмите "Вставка" > "Модуль" и вставьте следующий код в окно модуля.
VBA-код: Удалить первые n символов из текстовых строк
Function removeFirstx(rng As String, cnt As Long)
'Updateby Extendoffice
removeFirstx = Right(rng, Len(rng) - cnt)
End Function
3. Затем вернитесь на лист и введите формулу: "=removefirstx(A4,2)" в пустую ячейку, после чего протяните маркер заполнения вниз для получения результата, см. скриншот:
Примечание: В этой формуле: "A4" — ячейка, из которой вы хотите удалить символы; число "2" указывает количество символов, которые нужно удалить с начала строки.
1.2 Удалить последние n символов из текстовых строк
Чтобы удалить определенное количество символов с правой стороны текстовых строк, также можно использовать формулу или пользовательскую функцию.
С помощью формулы
Для удаления последних n символов из текстовых строк можно использовать формулу на основе функций LEFT и LEN.
Функции LEFT и LEN для удаления последних N символов:
- "string": Текстовая строка, из которой вы хотите удалить символы;
- "num_chars": Количество символов, которые нужно удалить.
Чтобы удалить3 символа с конца текстовых строк, используйте эту формулу и протяните маркер заполнения для копирования формулы в другие ячейки, см. скриншот:
=LEFT(A4, LEN(A4) - 3)
С помощью пользовательской функции
Пользовательская функция также поможет удалить последние n символов из списка ячеек. Следуйте этим шагам:
1. Удерживайте клавиши "Alt + F11", чтобы открыть окно "Microsoft Visual Basic for Applications".
2. Нажмите "Вставка" > "Модуль" и вставьте следующий код в окно модуля.
VBA-код: Удалить последние n символов из текстовых строк
Function removeLastx(rng As String, cnt As Long)
'Updateby Extendoffice
removeLastx = Left(rng, Len(rng) - cnt)
End Function
3. Затем вернитесь на лист и введите формулу: "=removelastx(A4,3)" в пустую ячейку, после чего протяните маркер заполнения вниз для получения результата, см. скриншот:
Примечание: В этой формуле: "A4" — ячейка, из которой вы хотите удалить символы; число "3" указывает количество символов, которые нужно удалить с конца строки.
1.3 Удалить первые, последние n символов или символы на определенной позиции с помощью мощной функции
Запоминать различные формулы для удаления символов слева, справа или с определенной позиции бывает сложно. В Kutools для Excel есть мощная функция — Удалить символы в определенной позиции. С помощью этого инструмента вы сможете выполнить задачу за несколько кликов без необходимости запоминать формулы.
1. Выделите ячейки, из которых нужно удалить символы, затем нажмите "Kutools" > "Текст" > "Удалить символы в определенной позиции", см. скриншот:
2. В диалоговом окне "Удалить символы в определенной позиции" выполните следующие действия:
2.1 Удалить первые n символов из ячеек:
- В поле "Число" введите количество символов, которые хотите удалить из строк. В этом примере я удалю первые2 символа.
- Выберите опцию "Начать слева" в разделе "Положение".
- Затем нажмите кнопку "Ок" или "Применить", чтобы получить результат, как показано на скриншоте ниже.
2.2 Удалить последние n символов из ячеек:
- В поле "Число" введите количество символов, которые хотите удалить из строк. В этом примере я удалю последние3 символа.
- Выберите опцию "Начать справа" в разделе "Положение".
- Затем нажмите кнопку "Ок" или "Применить", чтобы получить результат, как показано на скриншоте ниже.
2.3 Удалить n символов с определенной позиции в ячейках:
Если нужно удалить определенное количество символов с конкретной позиции в строке, например, удалить3 символа, начиная с третьего символа строки.
- В поле "Число" введите количество символов, которые хотите удалить из строк. В этом примере я удалю3 символа с определенной позиции.
- Выберите опцию "Указать" и введите номер, с которого нужно начать удаление символов, в поле раздела "Положение". Здесь я удалю символы, начиная с третьего символа.
- Затем нажмите кнопку "Ок" или "Применить", чтобы получить результат, как показано на скриншоте ниже.
Kutools для Excel - Усильте Excel более чем 300 необходимыми инструментами. Наслаждайтесь постоянно бесплатными функциями ИИ! Получите прямо сейчас
1.4 Удалить одновременно первые n и последние n символов из текстовых строк с помощью формулы
Если нужно удалить символы с обеих сторон текстовой строки в Excel, можно объединить функции MID и LEN для создания формулы, решающей эту задачу.
- "string": Текстовая строка, из которой вы хотите удалить символы;
- "left_chars": Количество символов для удаления слева;
- "right_chars": Количество символов для удаления справа.
Например, если нужно удалить одновременно первые7 символов и последние5 символов из текстовой строки, введите следующую формулу в пустую ячейку:
=MID(A4, 7+1, LEN(A4) - (7+5))
Примечание: В этой формуле: "A4" — ячейка, из которой вы хотите удалить символы; число "7" — количество символов, которые нужно удалить слева; число "5" — количество символов, которые нужно удалить справа.
Затем протяните маркер заполнения вниз до нужной области, чтобы применить формулу, и вы получите результат, как показано на скриншоте ниже:
Удалить ненужные / специальные символы из текстовых строк
При импорте данных из других источников в Excel часто появляются специальные или ненужные символы в рабочем листе. Чтобы удалить такие символы, как #@$%^&, пробелы, числа, нечисловые символы, разрывы строк и т.д., в этом разделе приведены полезные методы для решения задачи.
2.1 Удалить некоторые специальные символы из текстовых строк
Если в текстовых строках встречаются специальные символы, такие как %^&*(), для их удаления можно воспользоваться одним из трех способов ниже.
Удалить несколько специальных символов из текстовых строк с помощью функции SUBSTITUTE
В Excel можно вложить несколько функций SUBSTITUTE, чтобы заменить каждый конкретный символ на пустое значение. Общий синтаксис:
- "string_cell": Ячейка, содержащая текстовую строку, из которой нужно удалить специальные символы;
- "char1, char2, char3": Ненужные символы, которые вы хотите удалить.
Теперь скопируйте или введите следующую формулу в пустую ячейку:
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2, "#", ""), "&", ""), "*", ""), "%", "")
Затем протяните маркер заполнения вниз до нужных ячеек, и все указанные вами ненужные символы будут удалены сразу, см. скриншот:
Совет: Если нужно удалить больше символов, просто вложите больше функций SUBSTITUTE в формулу.
Удалить несколько специальных символов из текстовых строк с помощью пользовательской функции
Вложенные функции SUBSTITUTE хорошо работают, если нужно удалить всего несколько специальных символов. Однако если символов десятки, формула становится слишком длинной и неудобной. В этом случае поможет пользовательская функция, которая быстро и просто решит задачу.
1. Удерживайте клавиши "Alt + F11", чтобы открыть окно "Microsoft Visual Basic for Applications".
2. Нажмите "Вставка" > "Модуль" и вставьте следующий код в окно модуля.
VBA-код: Удалить несколько специальных символов из текстовых строк
Function RemoveUnwantedChars(Str As String, xchars As String)
'Updateby Extendoffice
For Index = 1 To Len(xchars)
Str = Replace(Str, Mid(xchars, Index, 1), "")
Next
RemoveUnwantedChars = Str
End Function
3. Затем закройте окно кода и вернитесь на лист, введите формулу "=RemoveUnwantedChars(A2, $D$2)" в пустую ячейку для вывода результата и протяните маркер заполнения вниз для получения результата, см. скриншот:
Примечание: В приведенной выше формуле: "A2" — ячейка, из которой нужно удалить символы; "$D$2" содержит специальные символы, которые вы хотите удалить (можно ввести любые другие нужные символы).
Удалить несколько специальных символов из текстовых строк с помощью удобной функции
Если у вас установлен Kutools для Excel, с помощью функции Удалить определенные символы можно удалить любые символы — числовые, буквенные, непечатаемые и т.д. — из списка ячеек по вашему выбору.
1. Выделите диапазон ячеек, из которых нужно удалить специальные символы, затем нажмите "Kutools" > "Текст" > "Удалить определенные символы", см. скриншот:
2. В диалоговом окне "Удалить определенные символы":
- Отметьте опцию "Пользовательский" в разделе "Удалить определенные символы".
- Затем введите специальные символы в поле, которые хотите удалить.
- Далее нажмите кнопку "Ок" или "Применить", чтобы сразу удалить указанные символы. См. скриншот:
Kutools для Excel - Усильте Excel более чем 300 необходимыми инструментами. Наслаждайтесь постоянно бесплатными функциями ИИ! Получите прямо сейчас
2.2 Удалить все числа из текстовых строк
Если у вас есть список текстовых строк, в которых смешаны числа, буквы и специальные символы, и вы хотите оставить только буквы и удалить все числа, воспользуйтесь одним из следующих способов.
Удалить числа из текстовых строк с помощью функции SUBSTITUTE
В Excel вложенная функция SUBSTITUTE поможет заменить все числа на пустое значение, поэтому используйте следующую формулу для удаления всех чисел из ячеек:
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,1,""),2,""),3,""),4,""),5,""),6,""),7,""),8,""),9,""),0,"")
Затем протяните маркер заполнения вниз до нужных ячеек, и все числа будут удалены из списка текстовых строк, см. скриншот:
Удалить числа из текстовых строк с помощью функции TEXTJOIN
Если у вас Excel2019,2021 или365, новая функция TEXTJOIN также поможет удалить числа из текстовых строк.
Скопируйте следующую формулу в пустую ячейку и одновременно нажмите Ctrl + Shift + Enter для получения первого результата:
=TEXTJOIN("", TRUE, IF(ISERR(MID(A2, ROW(INDIRECT( "1:"&LEN(A2) )), 1) *1), MID(A2, ROW(INDIRECT("1:"&LEN(A2))), 1), ""))
Затем скопируйте формулу в другие ячейки ниже, где хотите применить формулу, см. скриншот:
Примечание: TEXTJOIN доступна только в Excel2019,2021 и Office365.
Удалить числа из текстовых строк с помощью пользовательской функции
Кроме двух вышеуказанных формул, пользовательская функция также поможет вам, выполните следующие шаги:
1. Удерживайте клавиши "Alt + F11", чтобы открыть окно "Microsoft Visual Basic for Applications".
2. Нажмите "Вставка" > "Модуль" и вставьте следующий код в окно модуля.
VBA-код: Удалить числа из текстовых строк
Function RemoveNumbers(Txt As String) As String
'Updateby Extendoffice
With CreateObject("VBScript.RegExp")
.Global = True
.Pattern = "[0-9]"
RemoveNumbers = .Replace(Txt, "")
End With
End Function
3. Затем закройте и выйдите из окна кода, вернитесь на лист и введите формулу: =RemoveNumbers(A2) в пустую ячейку, затем протяните маркер заполнения вниз до нужных ячеек, см. скриншот:
Удалить числа из текстовых строк с помощью удобной опции
Если вам надоели сложные формулы, воспользуйтесь простым инструментом — функцией Удалить определенные символы в Kutools для Excel. С помощью этой функции задача решается в несколько кликов.
1. Выделите диапазон ячеек, из которых нужно удалить числа, затем нажмите "Kutools" > "Текст" > "Удалить определенные символы".
2. В диалоговом окне "Удалить определенные символы" выполните следующие действия:
- Отметьте опцию "Числовые" в разделе "Удалить определенные символы".
- Затем нажмите кнопку "Ок" или "Применить", чтобы сразу удалить числа. См. скриншот:
Kutools для Excel - Усильте Excel более чем 300 необходимыми инструментами. Наслаждайтесь постоянно бесплатными функциями ИИ! Получите прямо сейчас
2.3 Удалить нечисловые символы из текстовых строк
Чтобы удалить все нечисловые символы и оставить только числа из текстовых строк, в этом разделе рассмотрены способы решения задачи в Excel.
Удалить нечисловые символы из текстовых строк с помощью формулы в Excel2016 и более ранних версиях
Если вы используете Excel2016 или более ранние версии, примените сложную формулу для выполнения задачи, скопируйте или введите следующую формулу в пустую ячейку:
=SUMPRODUCT(MID(0&A2, LARGE(INDEX(ISNUMBER(--MID(A2, ROW(INDIRECT("1:"&LEN(A2))), 1)) * ROW(INDIRECT("1:"&LEN(A2))), 0), ROW(INDIRECT("1:"&LEN(A2))))+1, 1) * 10^ROW(INDIRECT("1:"&LEN(A2)))/10)
Затем скопируйте формулу в другие ячейки ниже, где хотите применить формулу, см. скриншот:
Примечание: Если числа в текстовой строке начинаются с0, этот0 будет потерян.
Удалить нечисловые символы из текстовых строк с помощью функции TEXTJOIN в Excel2019,2021,365
Приведенная выше формула может быть слишком сложной для большинства пользователей. Если у вас Excel2019,2021 или365, есть простая формула, которая поможет вам.
Скопируйте или введите следующую формулу в пустую ячейку и одновременно нажмите клавиши "Ctrl + Shift + Enter" для получения первого корректного результата:
=TEXTJOIN("",TRUE,IFERROR(MID(A2,ROW(INDIRECT("1:100")),1)+0,""))
Затем протяните маркер заполнения вниз до нужных ячеек, и вы получите результат, как показано на скриншоте ниже:
Примечание: С этой формулой ведущие нули сохраняются, так как числа возвращаются в виде текста.
Удалить нечисловые символы из текстовых строк с помощью пользовательской функции
Конечно, вы также можете создать свою пользовательскую функцию с более простым синтаксисом, выполните следующие действия:
1. Удерживайте клавиши "Alt + F11", чтобы открыть окно "Microsoft Visual Basic for Applications".
2. Нажмите "Вставка" > "Модуль" и вставьте следующий код в окно модуля.
VBA-код: Удалить нечисловые символы из текстовых строк
Function Removenonnumeric(str As String) As String
'Updateby Extendoffice
With CreateObject("VBScript.RegExp")
.Global = True
.Pattern = "[^0-9]"
Removenonnumeric = .Replace(str, "")
End With
End Function
3. Затем закройте и выйдите из окна кода, вернитесь на лист и введите формулу: =Removenonnumeric(A2) в пустую ячейку, затем протяните маркер заполнения вниз до нужных ячеек — будут извлечены только числа, как показано на скриншоте ниже:
Удалить нечисловые символы из текстовых строк с помощью простой функции
Для удаления нечисловых символов в диапазоне ячеек напрямую используйте функцию Удалить определенные символы в Kutools для Excel — задача решается в несколько кликов.
1. Выделите диапазон ячеек, из которых нужно удалить нечисловые символы, затем нажмите "Kutools" > "Текст" > "Удалить определенные символы".
2. В диалоговом окне "Удалить определенные символы" выполните следующие действия:
- Отметьте опцию "Нечисловые" в разделе "Удалить определенные символы".
- Затем нажмите кнопку "Ок" или "Применить", чтобы сразу удалить все нечисловые символы. См. скриншот:
Kutools для Excel - Усильте Excel более чем 300 необходимыми инструментами. Наслаждайтесь постоянно бесплатными функциями ИИ! Получите прямо сейчас
2.4 Разделить текст и числа из одной ячейки на два столбца
Иногда требуется извлечь текст и числа из текстовых строк в два отдельных столбца. С помощью следующих методов вы быстро и просто выполните эту задачу.
Разделить текст и числа из одной ячейки на два столбца с помощью пользовательской функции
С помощью следующей пользовательской функции вы можете сразу извлечь текст и числа, выполните следующие шаги:
1. Удерживайте клавиши "Alt + F11", чтобы открыть окно "Microsoft Visual Basic for Applications".
2. Нажмите "Вставка" > "Модуль" и вставьте следующий код в окно модуля.
VBA-код: Разделить текст и числа из текстовых строк на два столбца
Function SplitText(pWorkRng As Range, pIsNumber As Boolean) As String
'Updateby Extendoffice
Dim xLen As Long
Dim xStr As String
xLen = VBA.Len(pWorkRng.Value)
For i = 1 To xLen
xStr = VBA.Mid(pWorkRng.Value, i, 1)
If ((VBA.IsNumeric(xStr) And pIsNumber) Or (Not (VBA.IsNumeric(xStr)) And Not (pIsNumber))) Then
SplitText = SplitText + xStr
End If
Next
End Function
3. Затем закройте и выйдите из окна кода, вернитесь на лист и введите формулу: =SplitText(A2,FALSE) в пустую ячейку, затем протяните маркер заполнения вниз до нужных ячеек, чтобы получить весь текст, см. скриншот:
4. Затем введите формулу: =SplitText(A2,TRUE) в другую ячейку и протяните маркер заполнения вниз до нужных ячеек, чтобы получить числа, см. скриншот:
Разделить текст и числа из одной ячейки на два столбца с помощью простой функции
Если у вас есть Kutools для Excel, его функция Разделить ячейки поможет разделить ячейки на несколько столбцов или строк по любым разделителям, заданной ширине или по тексту и числу.
1. Выделите диапазон ячеек, которые хотите разделить, затем нажмите "Kutools" > "Объединить и разделить" > "Разделить ячейки", см. скриншот:
2. В диалоговом окне "Разделить ячейки" выберите опцию "Разделить данные" в разделе "Тип", затем отметьте "Разделить по тексту и числу" в разделе "Разделитель", см. скриншот:
3. Затем нажмите кнопку "Ок", появится еще одно диалоговое окно "Разделить ячейки", выберите ячейку для вывода разделенного текста и чисел, затем нажмите кнопку "ОК". Теперь вы увидите, что текст и числа в выбранных ячейках разделены на два столбца сразу, как показано в демонстрации ниже:
Kutools для Excel - Усильте Excel более чем 300 необходимыми инструментами. Наслаждайтесь постоянно бесплатными функциями ИИ! Получите прямо сейчас
2.5 Удалить символы разрыва строки из текстовых строк
Разрыв строки позволяет размещать несколько строк в одной ячейке Excel. Иногда при копировании данных с сайта или при ручном разделении содержимого ячейки с помощью "Alt + Enter" появляются разрывы строк или возвраты каретки. В некоторых случаях может понадобиться удалить разрывы строк, чтобы содержимое ячейки отображалось в одну строку, как показано на скриншоте ниже. Здесь я расскажу о способах решения этой задачи в Excel.
Удалить символы разрыва строки из текстовых строк с помощью функции Поиск и Замена
В Excel вы можете использовать функцию "Поиск и Замена" для удаления разрывов строк, выполните следующие действия:
1. Выделите диапазон данных, из которого нужно удалить разрывы строк.
2. Затем нажмите "Главная" > "Найти и выделить" > "Заменить" (или нажмите клавиши "Ctrl + H"), чтобы открыть диалоговое окно "Поиск и Замена", см. скриншот:
3. В появившемся диалоговом окне "Поиск и Замена" выполните следующие действия:
- Поместите курсор в поле "Найти" и нажмите "Ctrl + J" на клавиатуре — вы ничего не увидите, но символ разрыва строки будет вставлен.
- В поле "Заменить на" оставьте это поле пустым, чтобы просто удалить разрывы строк, или нажмите пробел один раз, чтобы заменить разрывы строк на пробелы.
4. Затем нажмите кнопку "Заменить все" — все разрывы строк в выбранных ячейках будут удалены или заменены на пробелы сразу. См. скриншот:
Удалить символы разрыва строки из текстовых строк с помощью функции SUBSTITUTE
Также можно создать формулу на основе функций SUBSTITUTE и CHAR для удаления разрывов строк из текстовых строк.
Примените следующую формулу для получения результата:
=SUBSTITUTE(A2,CHAR(10),"")
Совет: Функция SUBSTITUTE находит и заменяет символ CHAR(10), который представляет разрыв строки, на пустое значение. Если хотите, чтобы результат разделялся запятой и пробелом, используйте формулу ниже:
=SUBSTITUTE(A2,CHAR(10),", ")
Удалить символы разрыва строки из текстовых строк с помощью VBA-кода
Если вы уверенно пользуетесь VBA, здесь также приведен код для вас, выполните следующие шаги:
1. Удерживайте клавиши "Alt + F11", чтобы открыть окно "Microsoft Visual Basic for Applications".
2. Нажмите "Вставка" > "Модуль" и вставьте следующий код в окно модуля.
VBA-код: Удалить разрывы строк из текстовых строк
Sub RemoveCarriage()
'Updateby Extendoffice
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
Rng.Value = Replace(Rng.Value, Chr(10), "")
Next
End Sub
3. Затем нажмите клавишу "F5" для запуска кода, появится окно с запросом. Выберите диапазон, из которого нужно удалить разрывы строк, как показано на скриншоте ниже:
4. Затем нажмите кнопку "ОК" — все разрывы строк будут удалены из выбранного диапазона данных.
Удалить символы разрыва строки из текстовых строк с помощью умной опции
В Kutools для Excel функция Удалить определенные символы также поможет легко удалить разрывы строк.
1. Выделите диапазон ячеек, из которых нужно удалить разрывы строк, затем нажмите "Kutools" > "Текст" > "Удалить определенные символы".
2. В диалоговом окне "Удалить определенные символы" выполните следующие действия:
- Отметьте опцию "Непечатаемые символы" в разделе "Удалить определенные символы".
- Затем нажмите кнопку "Ок" или "Применить", чтобы удалить все разрывы строк из выбранного диапазона данных. См. скриншот:
Kutools для Excel - Усильте Excel более чем 300 необходимыми инструментами. Наслаждайтесь постоянно бесплатными функциями ИИ! Получите прямо сейчас
2.6 Удалить пробелы (в начале, в конце, лишние или все пробелы) из текстовых строк
При копировании и вставке текста из внешнего источника в лист Excel часто остаются лишние пробелы, и удалять их вручную бывает утомительно. К счастью, в Excel есть простые способы решения этой задачи.
Удалить лишние пробелы (в начале, в конце, между словами) из текстовых строк с помощью функции TRIM
В Excel для удаления начальных, конечных и лишних пробелов из текстовых строк поможет простая функция TRIM. Эта функция удаляет все пробелы, кроме одиночных между словами.
Введите следующую формулу в пустую ячейку:
=TRIM(A2)
Затем протяните маркер заполнения вниз для копирования формулы в другие ячейки — теперь все начальные, конечные и лишние пробелы между словами будут удалены сразу, как показано на скриншоте:
Удалить все пробелы из текстовых строк
Если нужно удалить все пробелы из текстовых строк, используйте функцию SUBSTITUTE или функцию Поиск и Замена.
С помощью функции SUBSTITUTE
Используйте функцию SUBSTITUTE для замены всех пробелов на пустое значение, примените следующую формулу в пустую ячейку:
=SUBSTITUTE(A2," ","")
Затем протяните маркер заполнения вниз для копирования формулы в другие ячейки — все пробелы будут удалены, как показано на скриншоте ниже:
С помощью функции Поиск и Замена
В Excel функция "Поиск и Замена" также поможет удалить все пробелы из выбранных ячеек, выполните следующие шаги:
1. Выделите диапазон данных, из которого нужно удалить все пробелы.
2. Затем нажмите "Главная" > "Найти и выделить" > "Заменить" (или нажмите клавиши "Ctrl + H"), чтобы открыть диалоговое окно "Поиск и Замена", и выполните следующие действия:
- Нажмите пробел в поле "Найти";
- В поле "Заменить на" оставьте это поле пустым.
3. Затем нажмите кнопку "Заменить все" — все пробелы в выбранных ячейках будут удалены сразу. См. скриншот:
Удалить все виды пробелов из текстовых строк с помощью мощной функции
В Kutools для Excel есть мощная функция — Удалить пробелы. С помощью этого инструмента можно удалить начальные, конечные, лишние, а также все пробелы из выбранных диапазонов в одном диалоговом окне, что повысит вашу производительность.
1. Выделите диапазон данных, из которого нужно удалить пробелы, затем нажмите "Kutools" > "Текст" > "Удалить пробелы". См. скриншот:
2. В диалоговом окне "Удалить пробелы" выберите тип пробела, который хотите удалить, в разделе "Тип пробелов":
- Чтобы удалить начальные пробелы, выберите опцию "Пробелы в начале";
- Чтобы удалить конечные пробелы, выберите опцию "Пробелы в конце";
- Чтобы удалить начальные и конечные пробелы одновременно, выберите опцию "Пробелы в начале и в конце";
- Чтобы удалить все лишние пробелы, выберите опцию "Все лишние пробелы";
- Чтобы удалить все пробелы, выберите опцию "Все пробелы".
3. Затем нажмите кнопку "Ок" или "Применить" — вы получите нужный результат.
Kutools для Excel - Усильте Excel более чем 300 необходимыми инструментами. Наслаждайтесь постоянно бесплатными функциями ИИ! Получите прямо сейчас
Удалить символы / текст до или после определенного символа
В этом разделе представлены способы удаления текста или символов до или после первого, последнего или N-го вхождения определенного символа.
3.1 Удалить текст до или после первого определенного символа
Если нужно удалить текст до или после первого определенного символа, например, пробела или запятой, из списка текстовых строк, как показано на скриншоте ниже, здесь приведены два способа.
Удалить текст до первого определенного символа с помощью формулы
Чтобы удалить текст или символы до первого определенного символа, создайте формулу на основе функций RIGHT, LEN и FIND. Общий синтаксис:
- "cell": Ссылка на ячейку или текстовая строка, из которой нужно удалить текст;
- "char": Определенный разделитель, по которому нужно удалить текст.
Например, чтобы удалить все до первой запятой из списка строк, примените следующую формулу в пустую ячейку и протяните ее вниз до нужных ячеек, см. скриншот:
=RIGHT(A2,LEN(A2)-FIND(",",A2))
Примечание: В приведенной выше формуле: "A2" — ячейка, из которой нужно удалить текст; "," — определенный символ, по которому нужно удалить текст (можно заменить на любой другой символ по необходимости).
Удалить текст после первого определенного символа с помощью формулы
Чтобы удалить все после первого определенного символа, используйте функции LEFT и FIND для получения результата. Общий синтаксис:
- "cell": Ссылка на ячейку или текстовая строка, из которой нужно удалить текст;
- "char": Определенный разделитель, по которому нужно удалить текст.
Введите следующую формулу в пустую ячейку и протяните маркер заполнения вниз до других ячеек, где хотите применить формулу — все символы после первой запятой будут удалены сразу, см. скриншот:
=LEFT(A2,FIND(",",A2)-1)
3.2 Удалить текст до или после N-го вхождения символа
Иногда в текстовых строках встречается несколько одинаковых разделителей, и может понадобиться удалить все символы до или после определенного вхождения, например, второго, третьего или четвертого. Для этого используйте следующие способы:
Удалить текст до N-го вхождения символа с помощью формулы
Чтобы удалить текст до N-го вхождения определенного символа, используйте следующую формулу. Общий синтаксис:
- "cell": Ссылка на ячейку или текстовая строка, из которой нужно удалить текст;
- "char": Определенный разделитель, по которому нужно удалить текст;
- "N": Вхождение символа, до которого нужно удалить текст.
Например, чтобы удалить все до второй запятой из текстовых строк, примените следующую формулу:
=RIGHT(A2,LEN(A2)-FIND("#",SUBSTITUTE(A2,",","#",2)))
Примечание: В приведенной выше формуле: "A2" — ячейка, из которой нужно удалить текст; "," — определенный символ, по которому нужно удалить текст (можно заменить на любой другой символ); "2" — номер вхождения, до которого нужно удалить текст.
Затем протяните маркер заполнения для копирования формулы в другие ячейки, см. скриншот:
Удалить текст после N-го вхождения символа с помощью формулы
Чтобы удалить текст после N-го вхождения определенного разделителя, используйте функции LEFT, SUBSTITUTE и FIND. Общий синтаксис:
- "cell": Ссылка на ячейку или текстовая строка, из которой нужно удалить текст;
- "char": Определенный разделитель, по которому нужно удалить текст;
- "N": Вхождение символа, после которого нужно удалить текст.
Когда вы освоите базовый синтаксис, скопируйте или введите следующую формулу в пустую ячейку:
=LEFT(A2, FIND("#", SUBSTITUTE(A2, ",", "#", 2)) -1)
Примечание: В приведенной выше формуле: "A2" — ячейка, из которой нужно удалить текст; "," — определенный символ, по которому нужно удалить текст (можно заменить на любой другой символ); "2" — номер вхождения, после которого нужно удалить текст.
Затем протяните маркер заполнения для копирования формулы в другие ячейки — все символы после второй запятой будут удалены сразу, см. скриншот:
Удалить текст до или после N-го вхождения символа с помощью пользовательской функции
Как видно, для удаления текста до или после N-го вхождения символа можно использовать различные комбинации стандартных функций Excel. Проблема в том, что нужно запоминать сложные формулы. В этом случае я создам пользовательскую функцию, которая охватит все сценарии, выполните следующие действия:
1. Удерживайте клавиши "Alt + F11", чтобы открыть окно "Microsoft Visual Basic for Applications".
2. Нажмите "Вставка" > "Модуль" и вставьте следующий код в окно модуля.
VBA-код: Удалить текст до или после N-го вхождения символа
Function RemoveTextOccurrence(Str As String, Delimiter As String, Occurrence As Integer, IsAfter As Boolean)
Dim xStr As String
Dim xStrLen, xF, xIntStart As Integer
xStr = Str
xStrLen = Len(xStr)
xIntStart = 1
For xF = 1 To Occurrence
xIntStart = InStr(xIntStart + 1, xStr, Delimiter, vbTextCompare)
If (xIntStart = 0) Or (xIntStart < 0) Then
If IsAfter Then
RemoveTextOccurrence = xStr
Else
RemoveTextOccurrence = ""
End If
Exit Function
End If
Next
If IsAfter Then
RemoveTextOccurrence = Mid(Str, 1, xIntStart - 1)
Else
RemoveTextOccurrence = Mid(Str, xIntStart + 1)
End If
End Function
3. Затем закройте и выйдите из окна кода, вернитесь на лист и используйте следующие формулы:
Удалить текст до второго вхождения запятой:
=RemoveTextOccurrence(A2, ", ", 2, FALSE)
Удалить текст после второго вхождения запятой
=RemoveTextOccurrence(A2, ", ", 2, TRUE)
3.3 Удалить текст до или после последнего вхождения символа
Если нужно удалить весь текст до или после последнего определенного символа, оставив только подстроку до или после него, в этом разделе приведены формулы для решения задачи.
Удалить текст до последнего вхождения символа с помощью формулы
Чтобы удалить все символы до последнего вхождения символа, используйте следующий общий синтаксис:
- "cell": Ссылка на ячейку или текстовая строка, из которой нужно удалить текст;
- "char": Определенный разделитель, по которому нужно удалить текст;
Если нужно удалить текст до последнего вхождения запятой, скопируйте или введите следующую формулу в пустую ячейку:
=RIGHT(A2,LEN(A2)-SEARCH("#",SUBSTITUTE(A2,",","#",LEN(A2)-LEN(SUBSTITUTE(A2,",","")))))
Примечание: В приведенной выше формуле: "A2" — ячейка, из которой нужно удалить текст; "," — определенный символ, по которому нужно удалить текст (можно заменить на любой другой символ).
Затем протяните маркер заполнения для копирования формулы в другие ячейки — все символы до последней запятой будут удалены, как показано на скриншоте ниже:
Удалить текст после последнего вхождения символа с помощью формул
Если значения ячеек разделены переменным количеством разделителей и нужно удалить все после последнего вхождения этого разделителя, используйте следующий общий синтаксис:
- "cell": Ссылка на ячейку или текстовая строка, из которой нужно удалить текст;
- "char": Определенный разделитель, по которому нужно удалить текст;
Скопируйте или введите следующую формулу в пустую ячейку и протяните маркер заполнения вниз для получения других результатов, см. скриншот:
=LEFT(A2,FIND("#",SUBSTITUTE(A2,",>","#",LEN(A2)-LEN(SUBSTITUTE(A2,",",""))))-1)
Примечание: В приведенной выше формуле: "A2" — ячейка, из которой нужно удалить текст; "," — определенный символ, по которому нужно удалить текст (можно заменить на любой другой символ).
3.4 Удалить текст между скобками
Если у вас есть список текстовых строк, часть которых заключена в скобки, и вы хотите удалить все символы внутри скобок вместе с самими скобками, как показано на скриншоте ниже, в этом разделе приведены способы решения задачи в Excel.
Удалить текст между скобками с помощью функции Поиск и Замена
В Excel встроенная функция Поиск и Замена поможет найти все тексты в скобках и заменить их на пустое значение. Выполните следующие действия:
1. Выделите список данных, из которого нужно удалить текст между скобками.
2. Затем нажмите "Главная" > "Найти и выделить" > "Заменить" (или нажмите клавиши "Ctrl + H"), чтобы открыть диалоговое окно Поиск и Замена, и выполните следующие действия:
- В поле "Найти" введите "(*)";
- В поле "Заменить на" оставьте это поле пустым.
3. Затем нажмите кнопку "Заменить все" — все символы в скобках (включая скобки) в выбранных ячейках будут удалены сразу. См. скриншот:
Совет: Функция Поиск и Замена также работает для двух и более пар скобок в текстовых строках.
Удалить текст между скобками с помощью формулы
Кроме функции Поиск и Замена, можно использовать формулу для решения задачи в Excel. Общий синтаксис:
- "text": Текстовая строка или ссылка на ячейку, из которой нужно удалить символы.
Скопируйте или введите следующую формулу в пустую ячейку, где хотите получить результат:
=SUBSTITUTE(A2,MID(LEFT(A2,FIND(")",A2)),FIND("(",A2),LEN(A2)),"")
Затем протяните маркер заполнения вниз до нужных ячеек — все тексты в скобках, включая скобки, будут удалены сразу, см. скриншот:
Совет: Если в значении ячейки нет скобок, после применения формулы выше появится ошибка. Чтобы игнорировать ошибку, используйте формулу ниже:
=IFERROR(SUBSTITUTE(A2,MID(LEFT(A2,FIND(")",A2)),FIND("(",A2),LEN(A2)),""),A2)
Удалить текст между скобками с помощью пользовательской функции
Приведенная выше формула хорошо работает для удаления текста из одной пары скобок. Однако если нужно удалить текст из нескольких пар скобок в строке, формула не сработает корректно. Здесь я создам простую пользовательскую функцию для решения задачи.
1. Удерживайте клавиши "Alt + F11", чтобы открыть окно "Microsoft Visual Basic for Applications".
2. Нажмите "Вставка" > "Модуль" и вставьте следующий код в окно модуля.
VBA-код: Удалить текст между скобками
Function remtxt(ByVal str As String) As String
'Updateby Extendoffice
While InStr(str, "(") > 0 And InStr(str, ")") > InStr(str, "(")
str = Left(str, InStr(str, "(") - 1) & Mid(str, InStr(str, ")") + 1)
Wend
remtxt = Trim(str)
End Function
3. Вернитесь на лист, введите формулу: "=remtxt(A2)" в пустую ячейку, затем протяните маркер заполнения вниз для применения формулы. Весь текст в скобках, включая сами скобки, будет удален, как показано на скриншоте:
Удалить слова из текстовых строк
В некоторых случаях может понадобиться удалить слова из списка ячеек, например, первое или последнее слово, дублирующиеся слова. Для решения таких задач в этом разделе приведены методы.
4.1 Удалить первое или последнее слово из текстовой строки
Чтобы удалить первое или последнее слово из списка текстовых строк, воспользуйтесь следующими формулами.
Удалить первое слово из текстовой строки с помощью формулы
Для удаления первых слов из списка текстовых строк создайте простую формулу на основе функций RIGHT, LEN и FIND. Общий синтаксис:
- "text": Текстовая строка или ссылка на ячейку, из которой нужно удалить первое слово.
Введите или скопируйте следующую формулу в пустую ячейку:
=RIGHT(A2,LEN(A2)-FIND(" ",A2))
Затем протяните маркер заполнения вниз для применения формулы к другим ячейкам, см. скриншот:
Совет: Если нужно удалить первые N слов из ячеек, используйте формулу ниже:
- "text": Текстовая строка или ссылка на ячейку, из которой нужно удалить первые n слов;
- "N": Количество слов, которые нужно удалить с начала текстовой строки.
Например, чтобы удалить первые два слова из ячеек, скопируйте или введите следующую формулу в пустую ячейку для получения результата, см. скриншот:
=MID(TRIM(A2),1+FIND("~",SUBSTITUTE(TRIM(A2)," ","~",2)),255)
Удалить последнее слово из текстовой строки с помощью формулы
Для удаления последнего слова из текстовых строк также можно использовать формулу. Общий синтаксис:
- "text": Текстовая строка или ссылка на ячейку, из которой нужно удалить последнее слово;
Используйте следующую формулу в пустой ячейке и протяните маркер заполнения вниз для применения формулы к другим ячейкам, см. скриншот:
=LEFT(TRIM(A2),FIND("~",SUBSTITUTE(A2," ","~",LEN(TRIM(A2))-LEN(SUBSTITUTE(TRIM(A2)," ",""))))-1)
Совет: Чтобы удалить последние N слов из списка ячеек, используйте следующий общий синтаксис:
- "text": Текстовая строка или ссылка на ячейку, из которой нужно удалить последние n слов;
- "N": Количество слов, которые нужно удалить с конца текстовой строки.
Например, чтобы удалить последние3 слова из списка ячеек, используйте следующую формулу для получения результата, см. скриншот:
=LEFT(A2,FIND("~",SUBSTITUTE(A2," ","~",LEN(A2)-LEN(SUBSTITUTE(A2," ",""))-(3-1))))
4.2 Удалить дублирующиеся символы или слова внутри ячейки
При удалении дублирующихся значений или строк в Excel есть разные опции, но для удаления дублирующихся символов или слов внутри одной ячейки стандартных функций нет. В этом разделе приведены пользовательские функции для решения задачи.
Удалить дублирующиеся символы внутри ячейки с помощью пользовательской функции
Если в ячейке несколько одинаковых символов, чтобы удалить дублирующиеся символы и оставить только первые вхождения, как показано на скриншоте ниже, используйте следующую пользовательскую функцию.
1. Удерживайте клавиши "Alt + F11", чтобы открыть окно "Microsoft Visual Basic for Applications".
2. Нажмите "Вставка" > "Модуль" и вставьте следующий код в окно модуля.
VBA-код: Удалить дублирующиеся символы внутри ячейки
Function RemoveDupeschars(pWorkRng As Range) As String
'Updateby Extendoffice
Dim xValue As String
Dim xChar As String
Dim xOutValue As String
Set xDic = CreateObject("Scripting.Dictionary")
xValue = pWorkRng.Value
For i = 1 To VBA.Len(xValue)
xChar = VBA.Mid(xValue, i, 1)
If xDic.Exists(xChar) Then
Else
xDic(xChar) = ""
xOutValue = xOutValue & xChar
End If
Next
RemoveDupeschars = xOutValue
End Function
3. Затем закройте окно кода, вернитесь на лист и введите формулу =RemoveDupeschars(A2) в пустую ячейку рядом с вашими данными, затем протяните маркер заполнения до нужных ячеек, см. скриншот:
Примечание: "A2" — ячейка, из которой нужно удалить дублирующиеся символы.
Совет: Функция чувствительна к регистру, то есть различает строчные и прописные буквы.
Удалить дублирующиеся слова внутри ячейки с помощью пользовательской функции
Если в ячейке есть одинаковые слова или текстовые строки, и вы хотите удалить все одинаковые слова, как показано на скриншоте ниже, используйте следующую пользовательскую функцию для решения задачи в Excel.
1. Удерживайте клавиши "Alt + F11", чтобы открыть окно "Microsoft Visual Basic for Applications".
2. Нажмите "Вставка" > "Модуль" и вставьте следующий код в окно модуля.
VBA-код: Удалить дублирующиеся слова внутри ячейки
Function RemoveDupeswords(txt As String, Optional delim As String = " ") As String
'Updateby Extendoffice
Dim x
With CreateObject("Scripting.Dictionary")
.CompareMode = vbTextCompare
For Each x In Split(txt, delim)
If Trim(x) <> "" And Not .exists(Trim(x)) Then .Add Trim(x), Nothing
Next
If .Count > 0 Then RemoveDupeswords = Join(.keys, delim)
End With
End Function
3. Затем закройте окно кода, вернитесь на лист и введите формулу =RemoveDupeswords(A2,", ") в пустую ячейку рядом с вашими данными, затем протяните маркер заполнения до нужных ячеек, см. скриншот:
Примечание: "A2" — ячейка, из которой нужно удалить дублирующиеся слова, а запятая с пробелом (", ") — разделитель между текстовыми строками (можно заменить на любой другой разделитель по необходимости).
Совет: Эта функция не чувствительна к регистру, строчные и прописные буквы считаются одинаковыми символами.
4.3 Обрезать текстовую строку до N слов
Если в ячейке длинная текстовая строка, иногда нужно обрезать ее до определенного количества слов, то есть оставить только первые n слов, а остальные удалить. В этом разделе приведены способы решения задачи в Excel.
Обрезать текстовую строку до N слов с помощью формулы
Чтобы обрезать текстовую строку до N слов, создайте формулу на основе функций LEFT, FIND и SUBSTITUTE. Общий синтаксис:
- "text": Текстовая строка или ссылка на ячейку, которую нужно обрезать;
- "N": Количество слов, которые нужно оставить слева от заданной текстовой строки.
Для выполнения задачи скопируйте или введите следующую формулу в пустую ячейку:
=LEFT(A2,FIND("~",SUBSTITUTE(A2," ","~",B2))-1)
Затем протяните маркер заполнения вниз для применения формулы к другим ячейкам, см. скриншот:
Обрезать текстовую строку до N слов с помощью пользовательской функции
Кроме формулы выше, можно создать пользовательскую функцию для решения задачи, выполните следующие действия:
1. Удерживайте клавиши "Alt + F11", чтобы открыть окно "Microsoft Visual Basic for Applications".
2. Нажмите "Вставка" > "Модуль" и вставьте следующий код в окно модуля.
VBA-код: Обрезать текстовую строку до N слов
Function GetNWords(StrWords As String, Num_of_Words As Integer) As String
'Updateby Extendoffice
Dim xArr
Dim xRes As String
Dim xF As Integer
xStr = StrWords
If (Num_of_Words < 1) Then
GetNWords = ""
Exit Function
End If
xArr = Split(xStr, " ")
xRes = ""
On Error Resume Next
For xF = 0 To UBound(xArr)
If Trim(xArr(xF)) <> "" Then
Num_of_Words = Num_of_Words - 1
If xRes = "" Then
xRes = Trim(xArr(xF))
Else
xRes = xRes & " " & Trim(xArr(xF))
End If
End If
If Num_of_Words = 0 Then Exit For
Next
If Num_of_Words = 0 Then
GetNWords = xRes & "..."
Else
GetNWords = xRes & "..."
End If
End Function
3. Затем закройте и выйдите из окна кода, вернитесь на лист и введите формулу: =GetNWords(A2,B2) в пустую ячейку, затем протяните маркер заполнения вниз для применения формулы к другим ячейкам — останутся только первые заданные слова, как показано на скриншоте ниже:
Лучшие инструменты для повышения продуктивности в Office
Повысьте свои навыки работы в Excel с помощью Kutools для Excel и ощутите эффективность на новом уровне. Kutools для Excel предлагает более300 расширенных функций для повышения производительности и экономии времени. Нажмите здесь, чтобы выбрать функцию, которая вам нужнее всего...
Office Tab добавляет вкладки в Office и делает вашу работу намного проще
- Включите режим вкладок для редактирования и чтения в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна вместо новых отдельных окон.
- Увеличьте свою продуктивность на50% и уменьшите количество щелчков мышью на сотни ежедневно!
Все надстройки Kutools. Один установщик
Пакет Kutools for Office включает надстройки для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro — идеально для команд, работающих в разных приложениях Office.





- Комплексный набор — надстройки для Excel, Word, Outlook и PowerPoint плюс Office Tab Pro
- Один установщик, одна лицензия — настройка занимает считанные минуты (MSI-совместимо)
- Совместная работа — максимальная эффективность между приложениями Office
- 30-дневная полнофункциональная пробная версия — без регистрации и кредитной карты
- Лучшее соотношение цены и качества — экономия по сравнению с покупкой отдельных надстроек