• 作成日 : 2025年8月25日

UPPER関数の使い方:エクセルで文字列を大文字に変換する方法

UPPER関数は、文字列内のすべての英字を大文字に変換するエクセルの文字列操作関数です。データの統一化、商品コードの標準化、メールアドレスの整形、データベースとの連携処理など、文字列の表記を統一する必要がある様々な場面で活用されています。本記事では、UPPER関数の基本的な使い方から実務での応用例、LOWER関数やPROPER関数との使い分け、データクレンジングでの活用方法、そしてよくある使用上の注意点とその対策まで、初心者にも分かりやすく解説します。

UPPER関数の使い方

UPPER関数とは

UPPER関数は、指定した文字列に含まれるすべてのアルファベット小文字を大文字に変換する関数です。この関数の特徴は、英字のみに作用し、数字、記号、日本語などその他の文字には影響を与えない点です。たとえば、「Excel2024」は「EXCEL2024」に変換され、数字の「2024」はそのまま残ります。

データ入力時の表記ゆれを統一したり、システム間でのデータ連携時に文字列形式を揃えたりする際に重要な役割を果たします。特に、大文字小文字を区別しないシステムへのデータ移行や、視認性を高めるための表示形式の統一などで頻繁に使用されます。

参考:UPPER 関数 – Microsoft サポート

基本構文

UPPER関数の構文は非常にシンプルです。

=UPPER(文字列)

文字列:大文字に変換したいテキストを指定します。セル参照、文字列の直接入力、他の関数の結果など、様々な形式で指定可能です。

基本的な使用例

実際にUPPER関数を使用してみましょう。

=UPPER (“excel”)           // 結果:”EXCEL”

=UPPER (“Excel 2024″)      // 結果:”EXCEL 2024”

=UPPER (“[email protected]”) // 結果:”[email protected]

=UPPER (“Hello World!”)    // 結果:”HELLO WORLD!”

セル参照を使用する場合:

A1セル:product_code_001

=UPPER (A1)  // 結果:”PRODUCT_CODE_001″

混在する文字の処理:

=UPPER (“製品No.abc123″)   // 結果:”製品NO.ABC123”

=UPPER (“50% OFF Sale”)    // 結果:”50% OFF SALE”

変換される文字と変換されない文字

UPPER関数の動作を正確に理解するために、変換対象を確認しましょう。

変換される文字
  • 英小文字(a-z)→ 英大文字(A-Z)
  • アクセント付き文字(à → À、ñ → Ñ など)
変換されない文字
  • 英大文字(すでに大文字)
  • 数字(0-9)
  • 記号(!、@、#、$ など)
  • 日本語(ひらがな、カタカナ、漢字)
  • スペース

※環境によって動作が異なる場合があります。

UPPER関数の利用シーン

データの統一化と標準化

入力された文字列の表記を統一する際に活用します。

商品コードの統一:

入力値:「prod-001」「PROD-001」「Prod-001」

統一処理:=UPPER (A1)

結果:すべて「PROD-001」に統一

部署コードの標準化:

=UPPER (TRIM (部署コード))  // 前後の空白も同時に除去

国コードの統一:

=UPPER (LEFT (国名コード, 2))  // 「jp」「JP」→「JP」

検索・照合の前処理

大文字小文字を区別しない検索を実現します。

VLOOKUP検索の改善:

=VLOOKUP (UPPER (検索値), UPPER (検索範囲), 2, FALSE) ※配列数式(Ctrl + Shift + Enter)を使用する

条件付き書式での使用:

=UPPER (A1)=UPPER ($B$1)  // 大文字小文字を無視して比較

重複チェックの精度向上:

=IF(COUNTIF (UPPER ($A$1:$A$100), UPPER (A1)) > 1,”重複あり”,”重複なし”) ※配列数式(Ctrl + Shift + Enter)を使用する

メールアドレスとURLの処理

システムによってはメールアドレスの大文字小文字を区別しない場合があります。

メールアドレスの標準化:

=LOWER (TRIM (A1))  // 通常は小文字に統一

=UPPER (LEFT (A1, FIND(“@”, A1)-1))&”@”&

RIGHT (A1, LEN (A1)-FIND (“@”,A1))  // ローカル部のみ大文字

ドメイン名の処理:

=LEFT (A1, FIND(“@”, A1)-1)&”@”&

UPPER (MID (A1, FIND (“@”, A1)+1, LEN (A1)))  // ドメイン部分を大文字

データベース連携での活用

外部システムとのデータ連携時の形式統一に使用します。

SQLデータベースへの登録前処理:

=UPPER(SUBSTITUTE (顧客コード, “-“, “”))  // ハイフン除去と大文字化

CSVエクスポート用の整形:

=”‘” & UPPER (A1)  // 文字列として明示的に出力

レポート・帳票での見出し作成

視認性の高い見出しやラベルの作成に活用します。

月次レポートの見出し:

=UPPER (TEXT (日付, “mmmm yyyy”))  // “JANUARY 2024”

部門別集計表のヘッダー:

=UPPER (部門名) & ” DEPARTMENT REPORT”

UPPER関数の応用・他関数との組み合わせ

LOWER関数・PROPER関数との使い分け

文字列の変換関数を目的に応じて使い分けます。

元の文字列:”hello WORLD 2024″

=UPPER (A1)   // “HELLO WORLD 2024″(すべて大文字)

=LOWER (A1)   // “hello world 2024″(すべて小文字)

=PROPER (A1)  // “Hello World 2024″(単語の先頭のみ大文字)

使い分けの指針
  • UPPER:コード、ID、定数など
  • LOWER:メールアドレス、URL
  • PROPER:人名、住所、タイトル

IF関数との組み合わせ

条件によって変換を制御します。

=IF(LEN (A1)<=5, UPPER (A1), A1)  // 5文字以下の場合のみ大文字化

特定の条件での変換:

=IF(LEFT (A1, 4)=”prod”, UPPER (A1), A1)  // “prod”で始まる場合のみ

SUBSTITUTE関数での文字列置換

大文字化と同時に文字列の置換を行います。

=UPPER (SUBSTITUTE (A1, ” “, “_”))  // 空白をアンダースコアに置換

複数の置換を連鎖:

=UPPER (SUBSTITUTE (SUBSTITUTE (A1, “-“, “”), ” “, “”))

CONCATENATE/CONCAT関数での文字列結合

複数の文字列を結合しながら大文字化します。

=UPPER (CONCATENATE (A1, “-“, B1, “-“, C1))

新しいCONCAT関数の使用:

=UPPER (CONCAT (A1:C1))  // 範囲を一括指定

TEXT関数での書式設定

日付や数値を文字列化してから大文字変換します。

=UPPER (TEXT (TODAY ( ), “dddd”))  // 曜日を大文字で表示

=UPPER (TEXT (A1, “mmmm”))       // 月名を大文字で表示

FIND/SEARCH関数での検索

大文字小文字を区別しない検索を実現します。

=FIND (UPPER (“検索文字”), UPPER (A1))  // 大文字化して検索

SEARCHは元々大文字小文字を区別しない:

=SEARCH (“abc”, A1)  // “ABC”も”abc”も検索可能

配列数式での一括処理

複数のセルを一度に大文字化します。

{=UPPER (A1:A10)}  // 配列数式として入力(Ctrl+Shift+Enter)

条件付き配列処理:

{=IF (LEN (A1:A10)>0, UPPER (A1:A10), “”)}

UPPER関数のよくあるエラーと対策

#VALUE!エラーの対処

引数が不足していたり、多すぎたりするとエラーになります。

誤:=UPPER ( )      // 引数なし

誤:=UPPER (A1,B1) // 引数が多い

正:=UPPER (A1)    // 正しい使用法

エラー回避:

=IFERROR (UPPER (A1), “”)

数値の扱い

数値をそのまま渡すと、文字列として扱われて返されます。

=UPPER (123)       // 結果:”123″(文字列として返される)

=UPPER (A1)        // A1が数値でも文字列として処理

セルが数値か文字列かを判別し、必要に応じて変換を分けて処理します。

=IF (ISNUMBER (A1), A1, UPPER (A1))

空白セルの処理

空白セルは空文字(””)として処理されます。(空白セルを空の文字列と解釈するため)

=UPPER(空白セル)  // 結果:””(空白文字列)

空白セルに対してもエラーにはならず、空の文字列が返されます。

=IF (LEN (TRIM (A1))=0, “”, UPPER (A1))

日本語の半角・全角

UPPER関数はアルファベットの大小変換に特化しており、日本語のひらがな・カタカナ・漢字や、丸数字などのUnicode特殊文字には作用しません。

=UPPER (“アイウエオ”)   // 結果:”アイウエオ”(変化なし)

=UPPER (“あいうえお”) // 結果:”あいうえお”(変化なし)

英数字の全角半角はASC関数などの補助関数を併用します。

=UPPER (ASC (A1))   // 全角英数を半角にしてから大文字化

パフォーマンスの考慮

同じ処理を繰り返すより、先に変換した列を作ると高速になります。

// 非効率:毎回計算

=VLOOKUP (UPPER (A1), UPPER (検索範囲), 2, FALSE)

// 効率的:事前に変換列を作成

B列:=UPPER (A1) として下にコピー

文字化けや特殊文字

一部の記号や装飾文字は変換されず、見た目もフォント依存になります。

=UPPER (“café”)    // 結果:”CAFÉ”(アクセント記号も対応)

=UPPER (“①②③”)     // 結果:”①②③”(丸数字は変化なし)

元のデータの保持

UPPER関数は元のデータを直接書き換えず、別のセルに変換結果を表示します。

A列:元データ

B列:=UPPER (A1)  // 元データは保持される

UPPER関数は英字を大文字に変換

UPPER関数は、文字列内の英小文字を大文字に変換するExcel関数です。データ統一、照合精度の向上、帳票作成などで活用され、記号・数字・日本語には影響しません。

LOWER・PROPER関数との使い分けや、SUBSTITUTE・TEXT関数との併用で応用範囲が広がります。

アクセント付き文字の変換には環境差があるため注意が必要です。


※ 掲載している情報は記事更新時点のものです。

※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。

関連記事