Пробелы в excel перед буквой

На чтение 3 мин. Просмотров 247 Опубликовано 20.05.2021

Предположим, у вас есть список текстовых строк, в котором все пробелы между словами удалены случайно, например: InsertBlankRowsBetweenData, и теперь вы хотите добавить пробелы перед каждой буквой с заглавными буквами, чтобы разделить слова как Вставить пустые строки между данными. Как вы могли быстро добавить пробелы перед заглавными буквами вместо одного за другим в Excel?

  • Вставьте пробелы перед заглавными буквами с помощью функции, определяемой пользователем
  • Вставить пробелы перед заглавными буквами с кодом VBA
  • Вставить пробел перед каждой заглавной буквой с помощью Kutools for Excel

Содержание

  1. Вставьте пробелы перед заглавными буквами с помощью функции, определяемой пользователем
  2. Легко удалять начальные/конечные/лишние пробелы в ячейках
  3. Вставляйте пробелы перед заглавными буквами с кодом VBA
  4. Вставить пробел перед каждой заглавной буквой с помощью Kutools для Excel
  5. Статья по теме:

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

К сожалению, нет прямого способа добавить пробелы перед заглавными буквами в Excel, но вы можете создать определяемую пользователем функцию для решения этой задачи.

1 . Активируйте свой рабочий лист, содержащий текстовые строки, в которые вы хотите добавить пробелы.

2 . Удерживая нажатыми клавиши ALT + F11 , откройте окно Microsoft Visual Basic для приложений .

3 . Нажмите Вставить > Module и вставьте следующий код в окно модуля .

Код VBA: вставляйте пробелы перед заглавными буквами

4 . Затем сохраните и закройте этот код, вернитесь на рабочий лист и введите эту формулу = addpaces (A1) в пустую ячейку помимо ваших данных, см. Снимок экрана:

5 . А затем перетащите маркер заполнения по диапазону, который вы хотите содержать эту формулу, вы получите пробелы, вставленные перед каждой вашей заглавной буквой.

Легко удалять начальные/конечные/лишние пробелы в ячейках

Kutools for Excel’s Удалить пробелы утилита позволяет Пользователи Excel могут легко удалить все начальные и конечные пробелы, лишние пробелы или все пробелы из выбранных ячеек. 30-дневная бесплатная пробная версия полнофункциональной версии!

Вставляйте пробелы перед заглавными буквами с кодом VBA

Вот еще один VBA код может оказать вам услугу, пожалуйста, сделайте следующее:

1 . Удерживая нажатыми клавиши ALT + F11 , откройте окно Microsoft Visual Basic для приложений .

2 . Нажмите Вставить > Module и вставьте следующий код в окно модуля .

Код VBA: вставляйте пробелы перед заглавными буквами

3 . Затем нажмите клавишу F5 , чтобы выполнить этот код, появится всплывающее окно, позволяющее выбрать диапазон данных, который вы хотите использовать.

4 . Затем нажмите OK , чтобы закрыть это окно подсказки, пробелы были вставлены сразу перед заглавными буквами, см. Снимок экрана:


Вставить пробел перед каждой заглавной буквой с помощью Kutools для Excel

Kutools for Excel’s Добавить текст утилита может помочь вам обойти макросы VBA и легко вставить пробел перед каждой заглавной буквой в Excel.

Kutools for Excel – включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная 30-дневная пробная версия, кредитная карта не требуется! Бесплатная пробная версия!

Kutools for Excel – объединяет более 300 дополнительных функций и инструментов для Microsoft Excel

Перейти к загрузке
Бесплатная пробная версия 60 днейПокупка
PayPal/MyCommerce

->

1 . Выберите диапазон, в который вы будете вставлять пробел перед заглавными буквами, и нажмите Kutools > Текст > Добавить текст . См. Снимок экрана:

2 . В открывшемся диалоговом окне Добавить текст введите пробел в поле Текст , установите флажок Только добавить в и выберите 1-я буква верхний регистр из раскрывающегося списка Только добавить в .

3 . Нажмите кнопку Ok , чтобы вставить пробел перед каждой заглавной буквой, как показано на следующем снимке экрана:

Kutools for Excel – Включает более 300 удобных инструментов для Excel. Полнофункциональная 30-дневная бесплатная пробная версия, кредитная карта не требуется! Получить сейчас

Примечания . Этот метод также добавит пробел в начале ячеек, если первая буква заглавная. Вы можете применить Kutools > Text > Remove Spaces , чтобы удалить все ведущие пробелы из выбранных ячеек.


Статья по теме:

Как добавить пробелы после запятых в Excel?


Предположим, у вас есть список текстовых строк, в котором все пробелы между словами случайно удалены, например: Инсербланкровсбетвиндата, и теперь вы хотите добавить пробелы перед каждой буквой с заглавными буквами, чтобы разделить слова как Вставить пустые строки между данными. Как можно быстро добавить пробелы перед заглавными буквами вместо одного за другим в Excel?

  • Вставляйте пробелы перед заглавными буквами с помощью функции, определяемой пользователем
  • Вставьте пробелы перед заглавными буквами с кодом VBA
  • Вставьте пробел перед каждой заглавной буквой с помощью Kutools for Excel

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

К сожалению, в Excel нет прямого способа добавить пробелы перед заглавными буквами, но вы можете создать определяемую пользователем функцию для решения этой задачи.

1. Активируйте рабочий лист, содержащий текстовые строки, в которые вы хотите добавить пробелы.

2. Удерживайте ALT + F11 , чтобы открыть Окно Microsoft Visual Basic для приложений.

3. Нажмите Вставить > Модулии вставьте следующий код в Окно модуля.

Код VBA: вставляйте пробелы перед заглавными буквами

Function AddSpaces(pValue As String) As String
'Update 20140723
Dim xOut As String
xOut = VBA.Left(pValue, 1)
For i = 2 To VBA.Len(pValue)
   xAsc = VBA.Asc(VBA.Mid(pValue, i, 1))
   If xAsc >= 65 And xAsc <= 90 Then
      xOut = xOut & " " & VBA.Mid(pValue, i, 1)
   Else
      xOut = xOut & VBA.Mid(pValue, i, 1)
   End If
Next
AddSpaces = xOut
End Function

4. Затем сохраните и закройте этот код, вернитесь на рабочий лист и введите эту формулу = добавляет пробелы (A1) в пустую ячейку помимо ваших данных, см. снимок экрана:
док-добавить-пробелы-перед-прописными-1

5. А затем перетащите маркер заполнения по диапазону, который вы хотите содержать эту формулу, вы получите пробелы, вставленные перед каждой вашей заглавной буквой.
док-добавить-пробелы-перед-прописными-1

Легко удалять ведущие / конечные / лишние пробелы в ячейках

Kutools for ExcelАвтора Удалить пробелы Утилита позволяет пользователям Excel легко быстро удалять все пробелы в начале, в конце, лишние пробелы или все пробелы из выбранных ячеек.

объявление удалить пространство 1

Вставьте пробелы перед заглавными буквами с кодом VBA

Вот еще один код VBA, который может оказать вам услугу, пожалуйста, сделайте следующее:

1. Удерживайте ALT + F11 , чтобы открыть Окно Microsoft Visual Basic для приложений.

2. Нажмите Вставить > Модулии вставьте следующий код в Окно модуля.

Код VBA: вставляйте пробелы перед заглавными буквами

Sub AddSpacesRange()
'Update 20140723
Dim Rng As Range
Dim WorkRng As Range
Dim xOut As String
Dim xValue As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For Each Rng In WorkRng
    xValue = Rng.Value
    xOut = VBA.Left(xValue, 1)
    For i = 2 To VBA.Len(xValue)
       xAsc = VBA.Asc(VBA.Mid(xValue, i, 1))
       If xAsc >= 65 And xAsc <= 90 Then
          xOut = xOut & " " & VBA.Mid(xValue, i, 1)
       Else
          xOut = xOut & VBA.Mid(xValue, i, 1)
       End If
    Next
    Rng.Value = xOut
Next
Application.ScreenUpdating = True
End Sub

3, Затем нажмите F5 нажмите клавишу для выполнения этого кода, появится диалоговое окно, позволяющее выбрать диапазон данных, который вы хотите использовать.
док-добавить-пробелы-перед-прописными-1

4, Затем нажмите OK чтобы закрыть это окно подсказки, пробелы были вставлены сразу перед заглавными буквами, см. снимок экрана:
док-добавить-пробелы-перед-прописными-1


Вставьте пробел перед каждой заглавной буквой с помощью Kutools for Excel

Kutools for ExcelАвтора Добавить текст Утилита может помочь вам обойти макросы VBA и легко вставить пробел перед каждой заглавной буквой в Excel.

1. Выберите диапазон, в который вы вставите пробел перед заглавными буквами, и щелкните Кутулс > Текст > Добавить текст. Смотрите скриншот:

2. В открывшемся диалоговом окне Добавить текст введите пробел в Текст поле, отметьте Только добавить к опции и 1-я буква заглавная из Только добавить к выпадающий список.

3, Нажмите Ok кнопку, чтобы вставить пробел перед каждой заглавной буквой, как показано на следующем снимке экрана:
док добавить пробелы перед прописными 7

Kutools for Excel — Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная пробная версия 30-день, кредитная карта не требуется! Get It Now

Заметки: Этот метод также добавит пробел в начале ячеек, если первая буква заглавная. Вы можете подать заявку Кутулс > Текст > Удалить пробелы чтобы удалить все ведущие пробелы из выбранных ячеек.


Связанная статья:


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

 

liny1

Пользователь

Сообщений: 93
Регистрация: 15.01.2015

Мне нужно, чтобы добавить пробел перед буквами.
вопрос:
1-BmwSkodaFerrariRenault
2-MercedesMitsubishi

Ответы (я хочу)
1-Bmw Skoda Ferrari Renault
2-Mercedes Mitsubishi

Данные могут быть длиннее.
Мне нужно сделать с формулой.
Спасибо,

 

Юрий М

Модератор

Сообщений: 60588
Регистрация: 14.09.2012

Контакты см. в профиле

liny1, какой язык для Вас родной?

 

liny1

Пользователь

Сообщений: 93
Регистрация: 15.01.2015

Syria,
Моя страна из Excel Нет информации :(

 

Юрий М

Модератор

Сообщений: 60588
Регистрация: 14.09.2012

Контакты см. в профиле

Тогда понятно. Исправил название темы)

 

Юрий М

Модератор

Сообщений: 60588
Регистрация: 14.09.2012

Контакты см. в профиле

Формулами не умею. Могу макросом)

 

МВТ

Пользователь

Сообщений: 1198
Регистрация: 01.02.2015

#6

12.05.2015 03:26:37

Формулами это очень муторно делать. Можно UDF

Код
Function AddSpace(S As String) As String
Dim I, L As Integer: L = Len(S)
Dim aStr As String
If L < 2 Then Exit Function
AddSpace = Left(S, 1)
For I = 2 To L
aStr = Mid(S, I, 1)
If aStr Like "[A-Z]" Then aStr = " " & aStr
AddSpace = AddSpace & aStr
Next I
End Function

 

SAS888

Пользователь

Сообщений: 757
Регистрация: 01.01.1970

#7

12.05.2015 08:18:53

Еще вариант для разнообразия:

Код
Function InsSpace(rng As Range) As String
    Dim s As String, i As Integer, x, y
    Set x = CreateObject("VBScript.RegExp"): x.Pattern = "[A-Z]": x.Global = True
    s = rng.Value: Set y = x.Execute(s)
    For i = 0 To y.Count - 1: s = Replace(s, y.Item(i), " " & y.Item(i)): Next
    InsSpace = Application.Trim(s)
End Function

Чем шире угол зрения, тем он тупее.

 

ikki

Пользователь

Сообщений: 9709
Регистрация: 22.12.2012

кто-нибудь проверял свои варианты? :)

фрилансер Excel, VBA — контакты в профиле
«Совершенствоваться не обязательно. Выживание — дело добровольное.» Э.Деминг

 

TheBestOfTheBest

Пользователь

Сообщений: 2366
Регистрация: 03.04.2015

Excel 2010 +PLEX +SaveToDB +PowerQuery

У меня вариант #7 работает.

Неизлечимых болезней нет, есть неизлечимые люди.

 

ikki

Пользователь

Сообщений: 9709
Регистрация: 22.12.2012

в точности как хотел автор вопроса? т.е. после символа «-» пробел не вставляется? :)

Изменено: ikki12.05.2015 08:52:20

фрилансер Excel, VBA — контакты в профиле
«Совершенствоваться не обязательно. Выживание — дело добровольное.» Э.Деминг

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

замутил формулами с доп столбцами

Лень двигатель прогресса, доказано!!!

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

#12

12.05.2015 09:10:55

доработка по замечанию ikki,

Код
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;E1;" "&E1);C1;" "&C1);D1;" "&D1);B1;" "&B1);"- ";"-")

Лень двигатель прогресса, доказано!!!

 

ikki

Пользователь

Сообщений: 9709
Регистрация: 22.12.2012

Сергей, это не замечание.
просто интересно — это невнимательность автора или ему реально именно так надо? :)

фрилансер Excel, VBA — контакты в профиле
«Совершенствоваться не обязательно. Выживание — дело добровольное.» Э.Деминг

 

TheBestOfTheBest

Пользователь

Сообщений: 2366
Регистрация: 03.04.2015

Excel 2010 +PLEX +SaveToDB +PowerQuery

#14

12.05.2015 09:38:27

Цитата
ikki написал:
«-» пробел не вставляется

Такого автор не требовал. ИМХО 1- и 2- этого реально в ячейках не должно быть. А где собственно сам автор?

Код
...
InsSpace = Replace(Application.Trim(s),"- ","-")
...

Изменено: TheBestOfTheBest12.05.2015 09:44:51

Неизлечимых болезней нет, есть неизлечимые люди.

 

ikki

Пользователь

Сообщений: 9709
Регистрация: 22.12.2012

#15

12.05.2015 10:02:14

Цитата
TheBestOfTheBest написал: ИМХО 1- и 2- этого реально в ячейках не должно быть.

да, вполне возможно.

фрилансер Excel, VBA — контакты в профиле
«Совершенствоваться не обязательно. Выживание — дело добровольное.» Э.Деминг

 

Hugo

Пользователь

Сообщений: 23257
Регистрация: 22.12.2012

Ну пока ясно написано —
было
1-BmwSkoda…
нужно
1-Bmw Skoda…
Какие вопросы?
А чтоб не гадать — для того написаны правила.
И есть ведь такая марка как Rolls-Royce :)
А заменять «- » на «-» в общем случае неправильно, мало ли что там может быть. Файла то нет!

 

МВТ

Пользователь

Сообщений: 1198
Регистрация: 01.02.2015

#17

12.05.2015 11:13:03

Тогда можно так, список символов-исключений задается строкой Ex

Код
Function AddSpace(S As String, Optional Ex As String = "-") As String
Dim I, L As Integer: L = Len(S)
Dim aStr As String
Dim Ok As Boolean
If L < 2 Then Exit Function
AddSpace = Left(S, 1)
For I = 2 To L
aStr = Mid(S, I, 1)
If aStr Like "[A-Z]" And Ok Then aStr = " " & aStr
AddSpace = AddSpace & aStr
Ok = InStr(Ex, aStr) = 0
Next I
End Function

 

liny1

Пользователь

Сообщений: 93
Регистрация: 15.01.2015

Здравствуйте,
Спасибо за ответ.
Я нашел подобные вопросы. Формула улучшить?

Связанные темы
Hugo

,
Образец данных не является реальным.

Изменено: liny112.05.2015 18:32:13

 

Юрий М

Модератор

Сообщений: 60588
Регистрация: 14.09.2012

Контакты см. в профиле

Мой вариант (нагородил как всегда) :D

 

Hugo

Пользователь

Сообщений: 23257
Регистрация: 22.12.2012

#20

12.05.2015 22:22:57

Цитата
liny1 написал: Образец данных не является реальным.

Тогда тем более куда торопиться код писать…

Skip to content

Как удалить пробелы в ячейках Excel

Вы узнаете, как с помощью формул удалять начальные и конечные пробелы в ячейке, лишние интервалы между словами, избавляться от неразрывных пробелов и непечатаемых символов.

В чем самая большая проблема с пробелами? Часто они невидимы для человеческого глаза. Внимательный пользователь может иногда заметить пустой интервал, скрывающийся перед текстом, или несколько ненужных пустот между словами. Но нет никакого способа визуально обнаружить конечные пробелы, те, которые находятся вне поля зрения в конце ячеек.

  • Удаляем все пробелы при помощи «Найти и заменить»
  • Используем формулу СЖПРОБЕЛЫ
  • Удаление начальных и концевых пробелов формулой
  • Как убрать разрыв строки и непечатаемые символы
  • Формула для удаления неразрывных пробелов
  • Как найти и удалить непечатаемый символ
  • Как цифры с пробелами преобразовать в число
  • Считаем пробелы при помощи формулы
  • Простой способ удаления пробелов без формул.

Не было бы большой проблемы, если бы эти лишние интервалы просто существовали, но они могут повлиять на результаты ваших формул. Дело в том, что две ячейки, содержащие один и тот же текст с пробелами и без них, даже если это всего лишь один знак, считаются разными значениями. В результате вы можете ломать голову, пытаясь понять, почему очевидно правильная формула не может соответствовать двум, казалось бы, идентичным записям.

Теперь, когда вы полностью осознаете проблему, пришло время найти решение. Есть несколько способов удалить пробелы из строки, и это руководство поможет вам выбрать метод, наиболее подходящий для вашей конкретной задачи и типа данных, с которым вы работаете.

Как убрать пробелы в Excel при помощи «Найти и заменить»

Это более быстрый метод, который может быть полезен в следующих ситуациях:

  1. Удаление двойных интервалов.

Обратите внимание, что этот метод не рекомендуется использовать для удаления начальных или конечных пробелов, так как хотя бы один их них там все равно останется. 

Итак, найдем и заменим двойные интервалы независимо от их расположения.

Вот как это можно сделать:

  • Выделите ячейки, из которых вы хотите их удалить.
  • Перейдите на главное меню -> Найти и выбрать -> Заменить.(Также можно использовать сочетание клавиш — CTRL + H).
  • В диалоговом окне «Найти и заменить» введите:
    • Найти: Двойной пробел.
    • Заменить на: Одинарный.

Нажмите «Заменить все».

Обратите внимание, что если у вас есть три интервала между двумя словами, то теперь вы получите два (один будет удален). В таких случаях вы можете повторить эту операцию снова, чтобы удалить любые двойные пробелы, которые ещё могли остаться.

Недостатки этого метода вы видите сами: перед некоторыми из слов остался начальный пробел. Аналогично остались и конечные пробелы после текста, просто они не видны явно. Поэтому для текстовых выражений я не рекомендовал бы применение этого способа.

  1. Чтобы удалить все пробелы в тексте, выполните следующие действия:
  • Выделите нужные ячейки.
  • Перейдите в меню Главная -> Найти и выбрать -> Заменить. (Также можно использовать сочетание клавиш — CTRL + H).
  • В диалоговом окне «Найти и заменить» введите:

Найти: одинарный пробел.

Заменить на: оставьте это поле пустым.

  • Нажмите «Заменить все».

Это удалит все пробелы в выбранном диапазоне.  

Вряд ли стоит производить такие манипуляции с текстовыми данными, а вот для чисел вполне подойдет. Интервалы между разрядами часто возникают при импорте данных из других программ через .csv файл. Правда, на рисунке вы видите, что цифры все равно остались записаны в виде текста, но вид их стал более упорядоченным. Как превратить их в настоящие числа — поговорим далее отдельно.

Функция СЖПРОБЕЛЫ.

Если ваш набор данных содержит лишние пробелы, функция СЖПРОБЕЛЫ  может помочь вам удалить их все одним махом — ведущие, конечные и несколько промежуточных, оставив только один интервал между словами.

Стандартный синтаксис очень простой:

=СЖПРОБЕЛЫ(A2)

Где A2 — ячейка, из которой вы хотите удалить.

Как показано на следующем скриншоте, СЖПРОБЕЛЫ успешно удалила всё до и после текста, а также лишние интервалы в середине строки.

И теперь вам нужно только заменить значения в исходном столбце новыми. Самый простой способ сделать это — использовать Специальная вставка > Значения.

Формулы для удаления начальных и концевых пробелов.

В некоторых ситуациях вы можете вводить двойные или даже тройные интервалы между словами, чтобы ваши данные были более удобочитаемыми. Однако вам нужно избавиться от ведущих пробелов (находящихся в начале), например:

Как вы уже знаете, функция СЖПРОБЕЛЫ удаляет лишние интервалы в середине текстовых строк, чего мы в данном случае не хотим. Чтобы сохранить их нетронутыми, мы будем использовать немного более сложную конструкцию:

=ПСТР(A2;НАЙТИ(ПСТР(СЖПРОБЕЛЫ(A2);1;1);A2);ДЛСТР(A2))

Это выражение в начале вычисляет позицию первого знака в строке. Затем вы передаете это число другой функции ПСТР, чтобы она возвращала всю текстовую строку (длина строки рассчитывается с помощью ДЛСТР), начиная с позиции первого знака.

Вы видите, что все ведущие пробелы исчезли, хотя несколько интервалов между словами всё же остались.
В качестве последнего штриха замените исходный текст полученными значениями, как это было описано выше.

Если же нужно удалить только пробелы в конце каждой ячейки, то формула будет немного сложнее:

=ЛЕВСИМВ(A2;МАКС((ПСТР(A2&ПОВТОР(» «;99);СТРОКА(A2:A100);1)<>» «)*СТРОКА(A2:A100)))

И обратите снимание, что ее нужно вводить как формулу массива (с Ctrl+Shift+Enter). В столбце A выровнять по правому краю получилось плохо из-за разного количества концевых пробелов в каждой ячейке. В столбце B эта проблема решена, и можно красиво расположить текст.

Как удалить разрывы строк и непечатаемые символы

При импорте данных из внешних источников появляются не только лишние пробелы, но и различные непечатаемые символы, такие как возврат каретки, перевод строки, вертикальная или горизонтальная табуляция и т.д.

Функция СЖПРОБЕЛЫ может избавиться от пробелов, но не может устранить непечатаемые символы. Технически она предназначена для удаления только значения 32 в 7-битной системе ASCII , которое как раз и является кодом пробела.

Чтобы удалить ещё и непечатаемые символы в строке, используйте её в сочетании с функцией ПЕЧСИМВ (CLEAN в английской версии). Как следует из названия, ПЕЧСИМВ предназначена для очистки данных от ненужного «мусора» и умеет удалять любой из первых 32 непечатаемых символов в 7-битном наборе ASCII (значения от 0 до 31), включая разрыв строки (значение 10).

Предполагая, что очищаемые данные находятся в ячейке A2, формула будет следующей:

=СЖПРОБЕЛЫ(ПЕЧСИМВ(A2))

Практически всегда, когда при помощи приведенного выше выражения вы удаляете разрывы строки, то отдельные слова оказываются «склеенными» друг с другом. Вы можете исправить это, используя один из следующих способов:

  • Воспользуйтесь инструментом Excel «Заменить все»: в поле «Найти» введите возврат каретки, нажав сочетание клавиш Ctrl + J. И в поле «Заменить» введите пробел. При нажатии кнопки «Заменить все» все разрывы строк в выбранном диапазоне заменяются пробелами.
  • Используйте следующую формулу для замены возврата каретки (код 13) и перевода строки (код 10) на пробелы:

=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2; СИМВОЛ(13);» «); СИМВОЛ(10); » «))

Как видите, почтовый адрес в колонке С выглядит вполне читаемо.

Как убрать неразрывные пробелы в Excel?

Если после использования формулы СЖПРОБЕЛЫ и ПЕЧСИМВ некоторые упрямые знаки все еще остаются, то скорее всего, вы скопировали / вставили данные из интернета или из другой программы, и несколько неразрывных пробелов все же прокрались в вашу таблицу.

Чтобы избавиться от неразрывных пробелов (html-код &nbsp; ), замените их обычными, а затем попросите функцию СЖПРОБЕЛЫ удалить их:

=СЖПРОБЕЛЫ((ПОДСТАВИТЬ(A2;СИМВОЛ(160);» «)))

Чтобы лучше понять логику, давайте разберем формулу:

  • Неразрывный пробел имеет код 160 в 7-битной системе ASCII, поэтому вы можете определить его с помощью СИМВОЛ(160).
  • Функция ПОДСТАВИТЬ используется для превращения неразрывных пробелов в обычные.
  • И, наконец, вы вставляете ПОДСТАВИТЬ в СЖПРОБЕЛЫ, чтобы окончательно удалить всё лишнее.

Если ваш рабочий лист также содержит непечатаемые символы, дополнительно к описанному выше используйте ещё функцию ПЕЧСИМВ, чтобы избавиться от пробелов и других ненужных знаков одним махом:

=СЖПРОБЕЛЫ(ПЕЧСИМВ((ПОДСТАВИТЬ(A2;СИМВОЛ(160);» «))))

Следующий скриншот демонстрирует разницу в результатах:

Как удалить определенный непечатаемый символ

Если взаимодействие трех функций, описанных в приведенном выше примере, не смогло устранить весь мусор из текста, то это означает, что оставшиеся знаки имеют значения ASCII, отличные от 0 до 32 (непечатаемые символы) или 160 (неразрывный пробел).

В этом случае используйте функцию КОДСИМВ, чтобы сначала идентифицировать код мешающего вам знака, а затем используйте ПОДСТАВИТЬ, чтобы заменить его обычным пробелом. А затем при помощи СЖПРОБЕЛЫ удалите его.

Предполагая, что нежелательные символы, от которых вы хотите избавиться, находятся в ячейке A2, вы пишете два выражения:

  1. В ячейке С2 определите код проблемного знака, используя одну из следующих функций:
    • Ведущий пробел или непечатаемый символ в начале строки:

=КОДСИМВ(ЛЕВСИМВ(A2;1))

  • Конечный пробел или непечатаемый символ в конце строки:

= КОДСИМВ(ПРАВСИМВ(A2;1))

  • Пробел или непечатаемый символ в середине строки, где n — позиция проблемного знака:

= КОДСИМВ(ПСТР(A2, n, 1)))

В этом примере у нас есть неизвестный знак в середине текста, в 11-й позиции, и мы определим его код:

=КОДСИМВ(ПСТР(A2;11;1))

Получаем значение 127 (см. скриншот ниже).

  1. В ячейке C3 вы заменяете СИМВОЛ(127) обычным пробелом (» «), а затем просто удаляете его:

=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(A2;СИМВОЛ(127); » «))

Если ваши данные содержат несколько разных непечатаемых символов, а также неразрывные пробелы, вы можете вложить две или более функции ПОДСТАВИТЬ друг в друга для одновременного удаления всех нежелательных знаков:

=СЖПРОБЕЛЫ(ПЕЧСИМВ((ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;СИМВОЛ(127);» «);СИМВОЛ(160);» «))))

Результат должен выглядеть примерно так:

Эту универсальную формулу мы и использовали. Как видите, успешно.

Как удалить все пробелы

В некоторых ситуациях может потребоваться удалить абсолютно все пробелы в ячейке, включая те, что находятся между словами или числами. Например, если вы импортировали в вашу таблицу числовой столбец, в котором пробелы используются в качестве разделителей тысяч. Конечно, разделители разрядов упрощают чтение больших чисел, но они же препятствуют вычислению ваших формул. Такие разделители нужно создавать при помощи форматирования, а не вручную.

Чтобы удалить все пробелы одним махом, используйте ПОДСТАВИТЬ, как описано в предыдущем примере, с той лишь разницей, что вы заменяете знак пробела, возвращаемый при помощи СИМВОЛ(32), ничем («»):

=ПОДСТАВИТЬ(A2; СИМВОЛ(32); «»)

Или вы можете просто ввести его (» «) в формуле, например:

=ПОДСТАВИТЬ(A2; “ “; «»)

Результатом этого будет текст, состоящий из цифр. Если же в качестве результата вам нужны именно числа, добавьте перед формулой два знака “-“ (минус). Любая математическая операция автоматически превращает цифры в число. А дважды применив минус, то есть дважды умножив на минус 1, мы не изменим величину числа и его знак.

Как посчитать пробелы в Excel

Чтобы получить общее количество пробелов в ячейке, выполните следующие действия:

  • Вычислите всю длину строки с помощью функции ДЛСТР:  ДЛСТР (A2)
  • Замените все пробелы ничем: ПОДСТАВИТЬ(A2; » «; «»)
  • Вычислить длину строки без пробелов: ДЛСТР(ПОДСТАВИТЬ(A2; » «; «»))
  • Вычтите этот результат из первоначальной длины.

Предполагая, что исходная текстовая строка находится в ячейке A3, полная формула выглядит следующим образом:

=ДЛСТР(A3) — ДЛСТР(ПОДСТАВИТЬ(A3;» «;»»))

Чтобы узнать, сколько лишних пробелов в ячейке, получите длину текста без них, а затем вычтите ее из первоначальной длины:

=ДЛСТР(A3)-ДЛСТР(СЖПРОБЕЛЫ(A3))

На рисунке показаны обе формулы в действии:

Теперь, когда вы знаете, сколько пробелов содержит каждая ячейка, вы можете безопасно удалить лишние, используя функцию СЖПРОБЕЛЫ.

Простой способ удаления пробелов без формул.

Как вы уже знаете, лишние пробелы и другие нежелательные символы могут незаметно скрываться на ваших листах, особенно если вы импортируете данные из внешних источников. Вы также знаете, как удалять пробелы в Excel с помощью формул. Конечно, изучение нескольких формул – хорошее упражнение для оттачивания ваших навыков, но это может занять много времени.

Пользователи Excel, которые ценят свое время и ценят удобство, могут воспользоваться текстовыми инструментами, включенными в надстройку Ultimate Suite for Excel . Один из этих удобных инструментов позволяет удалять пробелы и непечатаемые символы одним нажатием кнопки.

После установки Ultimate Suite добавляет на ленту Excel несколько полезных кнопок, таких как «Удалить пробелы» , «Удалить символы» , «Преобразовать текст»  и многое другое.

Всякий раз, когда вы хотите удалить лишние пробелы в таблицах Excel, выполните следующие 4 быстрых шага:

  1. Выделите ячейки (диапазон, весь столбец или строку), в которых вы хотите удалить лишние пробелы.
  2. Нажмите кнопку «Trim Spaces» на вкладке «Ablebits Data».
  3. Выберите один или несколько вариантов:
    • Обрезать начальные и конечные пробелы.
    • Удалить лишние пробелы между словами, кроме одного.
    • Удалить неразрывные пробелы (&nbsp;)
    • Удалить лишние переносы строк до и после значений, между значениями оставить только один.
    • Удалить все переносы строк в ячейке.
  4. Нажмите кнопку «Trim» .

Готово! Все лишние пробелы удалены одним щелчком мыши:

Здесь мы вместе с лишними пробелами удалили еще и переводы строки, чтобы значения располагались в привычном виде, в одну строку.

Вот как можно быстро удалить пробелы в ячейках Excel. Если вам интересно изучить другие возможности работы с текстовыми значениями (и не только), вы можете загрузить

ознакомительную версию Ultimate Suite. Благодарю вас за чтение и с нетерпением жду встречи с вами в нашем блоге на следующей неделе!

Формула ЗАМЕНИТЬ и ПОДСТАВИТЬ для текста и чисел В статье объясняется на примерах как работают функции Excel ЗАМЕНИТЬ (REPLACE в английской версии) и ПОДСТАВИТЬ (SUBSTITUTE по-английски). Мы покажем, как использовать функцию ЗАМЕНИТЬ с текстом, числами и датами, а также…
Как убрать пробелы в числах в Excel Представляем 4 быстрых способа удалить лишние пробелы между цифрами в ячейках Excel. Вы можете использовать формулы, инструмент «Найти и заменить» или попробовать изменить формат ячейки. Когда вы вставляете данные из…
Функция СЖПРОБЕЛЫ — как пользоваться и примеры Вы узнаете несколько быстрых и простых способов, чтобы удалить начальные, конечные и лишние пробелы между словами, а также почему функция Excel СЖПРОБЕЛЫ (TRIM в английской версии)  не работает и как…
Функция ПРАВСИМВ в Excel — примеры и советы. В последних нескольких статьях мы обсуждали различные текстовые функции. Сегодня наше внимание сосредоточено на ПРАВСИМВ (RIGHT в английской версии), которая предназначена для возврата указанного количества символов из крайней правой части…
Функция ЛЕВСИМВ в Excel. Примеры использования и советы. В руководстве показано, как использовать функцию ЛЕВСИМВ (LEFT) в Excel, чтобы получить подстроку из начала текстовой строки, извлечь текст перед определенным символом, заставить формулу возвращать число и многое другое. Среди…
5 примеров с функцией ДЛСТР в Excel. Вы ищете формулу Excel для подсчета символов в ячейке? Если да, то вы, безусловно, попали на нужную страницу. В этом коротком руководстве вы узнаете, как использовать функцию ДЛСТР (LEN в английской версии)…
Как быстро сосчитать количество символов в ячейке Excel В руководстве объясняется, как считать символы в Excel. Вы изучите формулы, позволяющие получить общее количество символов в диапазоне и подсчитывать только определенные символы в одной или нескольких ячейках. В нашем предыдущем…

По ссылке Дерика вы можете использовать эту формулу массива (это означает, что вы должны подтвердить ее с помощью Ctrl+ Shift+ Enter вместо просто Enter):

=MIN(IF(ISERROR(FIND(CHAR(ROW(INDIRECT("65:90"))),C2,2)),"",FIND(CHAR(ROW(INDIRECT("65:90"))),C2,2)))

Хотя я изменил его, чтобы начать со второго символа. Это даст вам позицию первой столицы, игнорируя первого персонажа. Так что, если C2 «ДжонСмит», это даст вам 5, потому что S находится на 5-й позиции в ячейке D2.

Теперь, когда вы знаете, где начинается фамилия, вы можете собрать полное имя вместе с пробелом, используя в E2:

=LEFT(C2,D2-1)&" "&RIGHT(C2,LEN(C2)-D2+1)

Это займет слева 5-1=4 символа, Джон, объединит его с пробелом, а фамилия будет правильной 9-5+1=5, поскольку 9 — это длина целого имени, то есть Смита, так что вы в конечном итоге «Джон Смит».

Понравилась статья? Поделить с друзьями:
  • Пробел текстовой формат excel
  • Пробел при сцепить в excel
  • Пробел после абзаца word
  • Пробел переносит текст на новую строку в word
  • Пробел на разрыв word