ZetCode

Excel UPPER, LOWER, and PROPER Functions

last modified October 5, 2026

The UPPER, LOWER, and PROPER functions are text functions in Excel that change the case of letters. UPPER converts every letter to uppercase, LOWER converts every letter to lowercase, and PROPER capitalizes the first letter of each word while lowercasing the rest. They are widely used to standardize names, codes, and imported data before it is compared, matched, or stored. This tutorial covers the syntax and arguments of each function, the word-separator quirk in PROPER, how numbers and dates are handled, and the errors you are likely to meet.

Function Basics

All three functions take a single text argument and return a new text string. They never change the value stored in a cell; the case conversion happens only in the cell that holds the formula. Letters are converted, while digits, punctuation, and spaces are copied unchanged.

Function Description Syntax
UPPER Converts all letters to uppercase =UPPER(text)
LOWER Converts all letters to lowercase =LOWER(text)
PROPER Capitalizes the first letter of each word and lowercases the rest =PROPER(text)

The table summarizes the three case functions. Each one returns text, so the result can be passed to another text function or compared with EXACT, but it cannot be used directly in arithmetic without being converted back to a number.

Argument Meaning
text The text to convert. It can be a literal in double quotes, a cell reference, or an expression that returns text. Numbers, dates, and logical values are converted to text first, as described below.

Exactly one argument is accepted. Supplying more produces a "too many arguments" error, and omitting it produces a "too few arguments" error.

The UPPER Function

UPPER changes every lowercase letter in the text to uppercase. Digits, spaces, and punctuation are left alone.

Basic UPPER formula
=UPPER("Excel functions")   ' EXCEL FUNCTIONS
=UPPER("Hello 123")         ' HELLO 123
=UPPER("")                  ' empty text stays empty

The first formula returns "EXCEL FUNCTIONS", the second shows that the digits and the space are not changed, and the third confirms that an empty string returns an empty string. UPPER is often used to prepare codes and identifiers that must be stored in a fixed uppercase form.

UPPER with a cell reference
=UPPER(A1)

When A1 contains "abc123", this formula returns "ABC123". The reference can point to any cell whose text you want to normalize.

The LOWER Function

LOWER is the mirror of UPPER: it changes every uppercase letter to lowercase and leaves everything else untouched.

A B
EXCEL FUNCTIONS =LOWER(A1)

The table places text in A1 and the LOWER formula in B1. The result is "excel functions".

LOWER with a cell reference
=LOWER("Hello 123")   ' hello 123
=LOWER(A1)

The first formula shows the basic behavior, including that the digits and the space survive unchanged. The second converts whatever text is in A1. Because email addresses and URLs are conventionally lowercase, LOWER is a common first step when building them.

The PROPER Function

PROPER capitalizes the first letter of each word and converts all other letters to lowercase, producing title case. As the Microsoft documentation puts it, it capitalizes the first letter in the text and any letter that follows a character other than a letter.

Basic PROPER formula
=PROPER("the quick brown fox")   ' The Quick Brown Fox
=PROPER("john smith")            ' John Smith

PROPER is ideal for formatting names, titles, and place names that were entered in inconsistent case.

The PROPER Word Separator Quirk

The rule "any character other than a letter starts a new word" has an important consequence. Apostrophes, digits, and hyphens are not letters, so they are treated as word separators. The letter immediately after them is capitalized even when it should not be.

Input PROPER result Separator
don't stop Don'T Stop apostrophe
o'brien O'Brien apostrophe
2nd place 2Nd Place digit
hello-world Hello-World hyphen
76BudGet 76Budget digit

The first row is the classic surprise: "don't" becomes "Don'T" because the apostrophe makes "t" the start of a new word. The name "o'brien" happens to come out right as "O'Brien", but a name such as "d'artagnan" would become "D'Artagnan", which many style guides reject. Hyphenated words keep a capital after the hyphen, so "hello-world" becomes "Hello-World".

PROPER word separators
=PROPER("don't stop")    ' Don'T Stop
=PROPER("2nd place")     ' 2Nd Place
=PROPER("hello-world")   ' Hello-World

When the automatic result is wrong, correct it after the fact. For example, =SUBSTITUTE(PROPER(A1),"Don'T","Don't") restores the apostrophe case for that one phrase. There is no setting that changes the separators that PROPER recognizes.

Numbers, Dates, and Logical Values

The case functions are designed for text, but they accept other values by converting them to text first. Digits and symbols are never altered by the conversion, but a number, date, or logical value becomes a text string. The value in the source cell is not changed; only the returned text differs.

Input Formula Result
123 =UPPER(123) "123" (text)
TRUE =UPPER(TRUE) "TRUE"
TRUE =LOWER(TRUE) "true"
15-Jun-2024 =UPPER(DATE(2024,6,15)) "45458" (serial number as text)

A date is stored as a serial number, and the case functions convert that underlying number rather than the way the date is displayed. To keep a readable date, convert it to text with the TEXT function before applying a case function, as shown below.

Case conversion of non-text values
=UPPER(123)                                   ' "123"
=LOWER(TRUE)                                  ' "true"
=UPPER(DATE(2024,6,15))                       ' "45458"
=UPPER(TEXT(DATE(2024,6,15),"mmmm d, yyyy"))  ' JUNE 15, 2024

The last formula formats the date first, so the case conversion applies to the month name and produces "JUNE 15, 2024". Without TEXT, the serial number would be returned instead.

UPPER and LOWER for Comparisons

The = operator, VLOOKUP, MATCH, and COUNTIF all ignore case when they compare text. UPPER and LOWER are therefore not needed to make those comparisons case-insensitive. They matter when you build a stable key from mixed-case input, or when you combine them with a case-sensitive test such as EXACT.

Formula Result
="Apple"="apple" TRUE (the = operator ignores case)
=EXACT("Apple","apple") FALSE (EXACT is case-sensitive)
=EXACT(UPPER("Apple"),UPPER("apple")) TRUE (both sides normalized)

Wrapping both arguments in UPPER makes the case-sensitive test case-insensitive. The same pattern works over a range.

Case-insensitive comparison
=EXACT(UPPER(A1), UPPER(B1))
=SUMPRODUCT(--EXACT(UPPER(A1:A10), "APPLE"))

The first formula returns TRUE when A1 and B1 spell the same word in any combination of cases. The second counts how many cells in A1:A10 match "apple" regardless of case.

Combining PROPER with TRIM

Imported text frequently carries leading, trailing, or repeated spaces. Since PROPER treats a space as a word separator, stray spaces can create odd capital letters, so clean the text first with TRIM.

A B
" excel FUNCTIONS " =PROPER(TRIM(A1))

TRIM removes the outer spaces and collapses internal runs to a single space, then PROPER capitalizes the result. The cell becomes "Excel Functions".

Combining PROPER and TRIM
=PROPER(TRIM(A1))

The inner function runs first, so the text is trimmed before it is capitalized. Nesting text functions this way is a common cleaning technique.

Standardizing Names

A B
jANE dOE =PROPER(A1)
mARY SMITH =PROPER(A2)
pETER jONES =PROPER(A3)

The names in column A use inconsistent capitalization. The PROPER formulas in column B return "Jane Doe", "Mary Smith", and "Peter Jones". This is a quick way to tidy a customer or mailing list before it is exported, but remember the separator quirk: names such as "o'brien" or "van-der-berg" are not always capitalized the way a person writes them.

Building Email Addresses

A B C
John Smith =LOWER(A1&"."&B1&"@company.com")

The formula joins the first name, a period, the last name, and the domain, then lowercases the whole string. With "John" and "Smith" it returns "john.smith@company.com". The concatenation operator & turns the values into one text string before LOWER is applied.

Email generation formula
=LOWER(A1&"."&B1&"@company.com")

Standardizing Product Codes

A B
abc123 =UPPER(A1)
AbC456 =UPPER(A2)
xyz789 =UPPER(A3)

The UPPER formulas return "ABC123", "ABC456", and "XYZ789". The digits are untouched, but the letters are made uniform. This matters in inventory systems where a code may be compared as text and "abc123" would otherwise be treated as a different item from "ABC123".

Standardizing product codes
=UPPER(A1)

Errors and Troubleshooting

Cause Symptom Fix
More than one argument Too many arguments error Each function takes exactly one text argument
Argument is an error value The same error is returned Clean the source with IFERROR before converting
A date is passed directly A serial number such as 45458 Format it first with TEXT, then apply the case function
The text result is used in a calculation #VALUE! or unexpected text Wrap the result in VALUE, or use the original number
PROPER meets an apostrophe, digit, or hyphen "Don'T", "2Nd", or "Mc-Donald" Correct the affected words with SUBSTITUTE or by hand
A case-insensitive match is expected from EXACT FALSE for "Apple" versus "apple" Wrap both sides in UPPER, or use the = operator

Most problems with these functions come from forgetting that they always return text. Feed a date through them and you get its serial number; feed the result into arithmetic and you get an error; expect PROPER to respect an apostrophe and you get a surprise capital. Check the source value and wrap the formula with TEXT, VALUE, or IFERROR when the output has to be used in another context.

Conclusion

The UPPER, LOWER, and PROPER functions are simple but indispensable tools for cleaning text in Excel. UPPER and LOWER enforce a single letter case across imported data and are handy for building comparison keys, while PROPER turns ragged input into readable title case. Remember that all three return text rather than changing the underlying value, that numbers and dates are converted to text first, and that PROPER treats every non-letter, including apostrophes and digits, as the start of a new word. With those behaviors in mind, you can standardize names, codes, and addresses confidently and predict exactly what each formula will produce.

Author

My name is Jan Bodnar, and I am a passionate programmer with extensive programming experience. I have been writing programming articles since 2007. To date, I have authored over 1,400 articles and 8 e-books. I possess more than ten years of experience in teaching programming.

List all Excel Formulas.