PROPER, UPPER, LOWER의 쓰임과 함정

PROPER를 이름 대소문자 버튼으로 쓰지 말 것. 이 시험에서는 mcdonald, McDonald, MCDONALD가 모두 Mcdonald가 되어 가운데 대문자가 사라졌다. UPPER와 LOWER는 말 그대로 동작한다. Microsoft의 PROPER 설명은 첫 글자와, 글자가 아닌 문자 뒤에 오는 글자를 대문자로 만들고 나머지는 소문자로 고정한다고 한다. Mc나 브랜드 중간 대문자에 대한 예외는 없다.

빠른 답변

PROPER를 이름 대소문자 버튼으로 쓰지 말 것. 이 시험에서는 mcdonald, McDonald, MCDONALD가 모두 Mcdonald가 되어 가운데 대문자가 사라졌다. UPPER와 LOWER는 말 그대로 동작한다. Microsoft의 PROPER 설명은 첫 글자와, 글자가 아닌 문자 뒤에 오는 글자를 대문자로 만들고 나머지는 소문자로 고정한다고 한다. Mc나 브랜드 중간 대문자에 대한 예외는 없다.

=PROPER("mcdonald")    → Mcdonald
=PROPER("McDonald")    → Mcdonald
=PROPER("MCDONALD")    → Mcdonald
=UPPER("McDonald")     → MCDONALD
=LOWER("McDonald")     → mcdonald

확인 사항

같은 규칙이 다른 예에도 나타났다. o'neil과 O'NEIL은 모두 O'Neil이 된다. 아포스트로피는 글자가 아니기 때문이다. sku-103은 Sku-103, iPhone 12는 Iphone 12, Mary-Jane은 Mary-Jane 그대로, 221b baker street는 221B Baker Street가 되었다. 하이픈이나 숫자 뒤의 글자는 대문자가 된다. SKU 열에 PROPER를 한꺼번에 넣지 말 것.

주의점 및 호환성

A12는 숫자 12345이고 텍스트가 아니다. UPPER, LOWER, PROPER는 모두 12345로 보이지만, PROPER 결과의 ISTEXT는 TRUE, LEN은 5여서 반환값은 텍스트다. 빈 셀의 PROPER는 빈 값이고 LEN은 0이며 오류는 없다. 목적이 표시가 아니라 찾기라면 대소문자를 바꿔도 소용없을 수 있다. 이 통합 문서의 XLOOKUP과 COUNTIF는 원래 대소문자를 구분하지 않는다.

영어 상세 예제, 수식 및 작성자 메모

I have never seen PROPER leave a “Mc” in place. I typed three versions of the same name into a test tab — mcdonald, McDonald, and MCDONALD — and all three came back as Mcdonald. The internal capital vanished even when it was already correct.

=PROPER("mcdonald")    → Mcdonald
=PROPER("McDonald")    → Mcdonald
=PROPER("MCDONALD")    → Mcdonald
=UPPER("McDonald")     → MCDONALD
=LOWER("McDonald")     → mcdonald

UPPER and LOWER did what they say. I use those when I actually want a uniform case, or when I am normalizing a label I will display. I do not use PROPER as a name-case button. Microsoft’s PROPER function page is clear about why: it capitalizes the first letter, and any letter that follows a character that is not a letter, and it forces every other letter to lowercase. There is no special case for “Mc”, “Mac”, or a brand capital in the middle of a word.

The same rule showed up everywhere else I tried.

=PROPER("o'neil")             → O'Neil
=PROPER("O'NEIL")             → O'Neil
=PROPER("sku-103")            → Sku-103
=PROPER("iPhone 12")          → Iphone 12
=PROPER("Mary-Jane")          → Mary-Jane
=PROPER("221b baker street")  → 221B Baker Street

The apostrophe in O'NEIL is not a letter, so the N after it stayed (or became) capital: O'Neil. A hyphen is also not a letter, so Mary-Jane survived and sku-103 became Sku-103. I would not run PROPER down a SKU column; leading-zero and casing issues on SKUs are already messy enough, and Keep Leading Zeros is the better place to start. iPhone 12 lost the P. 221b baker street picked up a capital B after the digit, which is the rule working as written, and probably not what a mailing list wants if you were trying to tidy addresses.

UPPER and LOWER of the same cells were simple: SKU-103 / sku-103, IPHONE 12 / iphone 12, 221B BAKER STREET / 221b baker street. Hyphens and digits were left alone. Microsoft’s UPPER and LOWER pages do not add extra rules, and I did not see any in this file.

Numbers, empty cells, and lookups

A12 was the number 12345, not text. UPPER, LOWER, and PROPER all displayed 12345, LEN was 5, and ISTEXT of the PROPER result was TRUE. The functions accepted a number and handed back text. I did not then try to add that result to anything; I am only reporting the type.

PROPER of an empty cell returned blank, with LEN 0. No error.

If the job is a lookup rather than a display cleanup, changing case may not be the lever you think it is. XLOOKUP and COUNTIF in this workbook have already been case-insensitive; folding a SKU to UPPER will not separate SKU-103 from sku-103. That write-up is Case-Sensitive Lookup. And if you are splitting a full name before you even think about PROPER, start with Split a Full Name — I would rather split first and then decide, per field, whether a mechanical PROPER is even acceptable.

I do not have a general substitute recipe that restores McDonald or iPhone. SUBSTITUTE can patch known tokens, but that is a word list, not a case function. See SUBSTITUTE vs REPLACE if you go that way. For a one-off list, I still fix the exceptions by hand.

Oscar

스프레드시트 수식과 오류 해결을 소개합니다. 검증 환경과 미확인 사항은 각 글을 참고하세요.

Google Sheets, 12 Nov 2026, tab ProperCase. Microsoft’s PROPER rule (capitalize after any non-letter) matched these results; not re-run in desktop Excel.

다음 글: 데이터 정리 및 입력 다른 셀을 기준으로 한 Excel 조건부 서식