Note: The other languages of the website are Google-translated. Back to English

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

Предположим, у вас есть список текстовых строк, в котором все пробелы между словами случайно удалены, например: Инсербланкровсбетвиндата, и теперь вы хотите добавить пробелы перед каждой буквой с заглавными буквами, чтобы разделить слова как Вставить пустые строки между данными. Как можно быстро добавить пробелы перед заглавными буквами вместо одного за другим в 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 для 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 для Excel Добавить текст Утилита может помочь вам обойти макросы VBA и легко вставить пробел перед каждой заглавной буквой в Excel.

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

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% и сокращает количество щелчков мышью на сотни каждый день!
офисный дно
Сортировать комментарии по
Комментарии (9)
Оценок пока нет. Оцените первым!
Этот комментарий был сведен к минимуму модератором на сайте
мне нужна помощь в excel, я хочу найти верхний регистр в ячейке. например: Сагар Пол MBA 16:04 я хочу выделить MBA
Этот комментарий был сведен к минимуму модератором на сайте
Я надеюсь, что вы можете увидеть его и попробовать. Sub Test() Dim Rg As Range, xCell As Range Dim i As Long Dim xChar As String Set Rg = Application.Selection For Each xCell In Rg For i = 1 To xCell.Characters.Count xChar = xCell.Characters(i, 1) ).Text Если Asc(xChar) > 64 и Asc(xChar) < 91, то xCell.Characters(i, 1).Font.Color = vbRed End If Next Next End Sub
Этот комментарий был сведен к минимуму модератором на сайте
Привет, твой код работает фантастически. Знаете ли вы, как адаптировать код 20140723 для работы с несколькими листами? Я хотел бы добавить пробелы между заглавными буквами по всей книге. Спасибо!
Этот комментарий был сведен к минимуму модератором на сайте
Здравствуйте

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

У меня только одна проблема: некоторые строки содержат такие слова, как URL, которые не следует разделять.
Видите ли вы способ исключить, например, «URL» из добавления пробелов?

Было бы очень хорошо, если бы вы могли помочь. Я пробовал уже какое-то время, но я не знаю, как это решить ..


С наилучшими пожеланиями
Luca
Этот комментарий был сведен к минимуму модератором на сайте
Здравствуйте,
Спасибо за ваш комментарий и совет. Я отправил ваше предложение команде проекта Kutools, я уверен, что они скоро его улучшат.
Этот комментарий был сведен к минимуму модератором на сайте
Нашел решение?
Этот комментарий был сведен к минимуму модератором на сайте
привет хочу спросить вас, если вы нашли решение для вашего случая, если вы нашли решение, пожалуйста, предоставьте мне это
Этот комментарий был сведен к минимуму модератором на сайте
Эта функция обрабатывает две проблемы, которые не охватывает данное решение:
1. неанглийский текст (с диакритическими знаками)
2. последовательные заглавные буквы, после которых не должно быть пробелов

` Частная функция AddSpaces(sText As String)As String
' Вставляет пробел непосредственно перед заглавной буквой, за исключением случаев, когда каждый последующий символ заглавный.
' Последнее обновление: 2022-07-04
'
Dim sRet как строка, i как целое число, sChar как строка, bPrevWasUCase как логическое значение

sRet = Слева (sText, 1)
Для i = 2 To Len(sText)
sChar = Середина (sText, i, 1)
Если sChar = UCase(sChar), а не bPrevWasUCase, тогда
sRet = sRet & " " & sChar
bPrevWasUCase = Истина
Еще
sRet = sRet и sChar
bPrevWasUCase = Ложь
End If
Затем я

AddSpaces= sRet
Конечная функция`
Этот комментарий был сведен к минимуму модератором на сайте
Привет друг,

Спасибо за вашу долю. Я попробовал ваш код VBA, но он не работает. Наш код VBA может обрабатывать неанглийский текст. Я проверил французский текст, и пробелы успешно вставлены перед заглавными буквами.

С уважением,
Мэнди
Здесь еще нет комментариев
Оставляйте свои комментарии
Публикация как гость
×
Оценить этот пост:
0   Характеристики
Предлагаемые места

Подписывайтесь на Нас

Copyright © 2009 - www.extendoffice.ком. | Все права защищены. Питаться от ExtendOffice, | Карта сайта
Microsoft и логотип Office являются товарными знаками или зарегистрированными товарными знаками Microsoft Corporation в США и / или других странах.
Защищено Sectigo SSL