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

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

Sub MakeUpper()

Dim MyText As String     Dim MyRange As Range     Dim CellCount As Integer

Set MyRange = ActiveSheet.Range(ActiveWindow.Selection.Address)

For CellCount = 1 To MyRange.Cells.Count         If Not MyRange.Cells(CellCount).HasFormula Then             MyText = MyRange.Cells(CellCount).Value             MyRange.Cells(CellCount).Value = UCase(MyText)

End If     Next CellCount End Sub

Этот макрос проходит по ячейкам в выбранном диапазоне, преобразует содержимое любой ячейки, не содержащей формулы, в верхний регистр. Вы можете легко изменить макрос так, чтобы он преобразовывался в нижний регистр, изменив функцию UCase (используется в нижней части макроса) на LCase. Еще одна изящная модификация — если вы хотите использовать регистр заголовка вместо верхнего или нижнего регистра. (Регистр заголовка — это когда только первая буква каждого слова начинается с верхнего регистра.) Для этого замените UCase (MyText) на Application.Proper (MyText).

_Примечание: _

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

link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (1970) применим к Microsoft Excel 97, 2000, 2002 и 2003.