Помимо использования Excel с числовыми данными, многие люди также используют его с текстовыми данными. Это может быть как простая запись имен, так и что-то более сложное.

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

В этом уроке я покажу вам несколько способов сделать первую букву в ячейках Excel заглавной.

Итак, приступим!

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

Может быть два сценария, в которых вы хотите извлечь выгоду:

  • Первая буква каждого слова
  • Только первая буква первого слова

Делайте первую букву каждого слова заглавной

Это довольно просто сделать, поскольку в Excel есть специальная функция для этого.

Функция PROPER , цель существования которой — использовать первую букву каждого слова с заглавной буквы.

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

Ниже приведена формула, которую вы можете использовать:

=PROPER(A2)

Это сделает первую букву каждого слова в указанной ячейке заглавной.

Довольно прямолинейно!

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

Используйте заглавные буквы только в первой букве первого слова

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

Однако вы все равно можете сделать это (легко) с помощью комбинации формул.

Опять же, может быть два сценария, в которых вы захотите это сделать:

  • Сделайте первую букву первого слова с заглавной буквы и оставьте все как есть
  • Сделайте первую букву первого слова заглавной, а остальные измените на нижний регистр (так как некоторые буквы в верхнем регистре уже могут быть)

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

Посмотрим, как это сделать!

Сделайте первую букву первого слова с заглавной буквы и оставьте все как есть

Предположим, у вас есть приведенный ниже набор данных, и вы хотите использовать только первую букву ( и оставить все как есть ).

Ниже приведена формула, которая сделает это:

=UPPER(LEFT(A2,1))&RIGHT(A2,LEN(A2)-1)

В приведенной выше формуле функция LEFT используется для извлечения первого символа из строки в ячейке. Затем он использует функцию UPPER, чтобы изменить регистр первой буквы на верхний. Затем он объединяет остальную часть строки (которая извлекается с помощью функции RIGHT).

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

Сделайте первую букву первого слова заглавной, а остальные замените на строчные

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

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

Предположим, у вас есть набор данных ниже:

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

=REPLACE(LOWER(A2),1,1,UPPER(LEFT(A2,1)))

Позвольте мне объяснить, как работает эта формула:

  • LOWER (A2) — переводит весь текст в нижний регистр.
  • UPPER (LEFT (A2,1) — преобразует первую букву текстовой строки в ячейке в верхний регистр.
  • Функция REPLACE используется только для замены первого символа его версией в верхнем регистре.

Одним из преимуществ использования формулы является то, что она сохраняет динамические данные. Например, если у вас есть формула и вы вносите какие-либо изменения в данные в столбце A (исходные текстовые данные), полученные данные будут автоматически обновлены. Если вам не нужны исходные данные и вы хотите сохранить только окончательный результат, не забудьте преобразовать формулу в значения.

Сделать первую букву заглавной с помощью VBA

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

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

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

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

Теперь позвольте мне дать вам коды VBA.

В приведенном ниже коде первая буква первого слова будет заглавной, а все останется как есть:

Sub CapitalizeFirstLetter()
Dim Sel As Range
Set Sel = Selection
For Each cell In Sel
cell.Value = UCase(Left(cell.Value, 1)) & Right(cell.Value, Len(cell.Value) - 1)
Next cell
End Sub

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

Sub CapitalizeFirstLetter()
Dim Sel As Range
Set Sel = Selection
For Each cell In Sel
cell.Value = Application.WorksheetFunction.Replace(LCase(cell.Value), 1, 1, UCase(Left(cell.Value, 1)))
Next cell
End Sub

Вам нужно поместить этот код VBA в обычный модуль в редакторе VB.

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

Надеюсь, вы нашли это руководство по Excel полезным.

Как написать первую букву строки с заглавной буквы в Excel (с помощью формулы и VBA)