「商品コードの大文字・小文字がバラバラで見づらい…」。
こんな状態だと、目視チェックやデータ連携でミスが起きやすいですよね。
手作業で1つずつ直していたら、日が暮れてしまいます。
ExcelのUPPER関数を使えば、小文字のアルファベットを一括で大文字に変換できます。
この記事では、基本の書き方から実務で使えるデータクレンジング、他の関数との組み合わせまで紹介します。
LOWER関数やPROPER関数との違いもまとめました。
UPPER関数とは?
UPPER(アッパー)関数は、文字列中のアルファベットをすべて大文字に変換する関数です。
英語の「upper(上の)」が名前の由来になっています。
たとえば「excel」を渡すと「EXCEL」が返ります。
商品コードや管理番号の表記を大文字に統一したいときに便利です。
NOTE
UPPER関数はExcelの基本関数です。バージョンを問わず、すべてのExcel(Microsoft 365・Web版も含む)で使えます。
書式と引数
=UPPER(文字列)
| 引数 | 必須/省略可 | 説明 |
|---|---|---|
| 文字列 | 必須 | 大文字に変換したい文字列またはセル参照 |
引数は1つだけのシンプルな関数です。
セル参照か、ダブルクォーテーションで囲んだ文字列を指定します。
UPPER関数が変換するもの・しないもの
UPPER関数はアルファベット専用の関数です。
変換対象と対象外を整理しておきましょう。
- 半角アルファベット: abc → ABC(変換される)
- 全角アルファベット: abc → ABC(変換される)
- 数字・記号: 123、@、- → そのまま(変換されない)
- カタカナ・漢字: エクセル、関数 → そのまま(変換されない)
- すでに大文字: ABC → ABC(そのまま返る)
全角の小文字アルファベットも大文字に変換できる点は覚えておくと便利です。
UPPER関数の基本的な使い方
セル参照で変換する
セルA2に「biz-tactics」と入っている場合、次のように書きます。
=UPPER(A2)
結果は「BIZ-TACTICS」です。
ハイフンはアルファベットではないため、そのまま残ります。
直接文字列を入力して変換する
セルを使わず、文字列を直接指定することもできます。
=UPPER("hello world")
結果は「HELLO WORLD」です。
スペースや数字が含まれていても、エラーにはなりません。
日本語が混在していても大丈夫です。
=UPPER("Excel入門")
結果は「EXCEL入門」になります。
アルファベット部分だけが大文字に変換されます。
変換結果を値として貼り付ける方法
UPPER関数の結果は数式です。
元のセルを削除すると、参照エラーになってしまいます。
変換結果を固定するには「値の貼り付け」を使います。
- UPPER関数で変換したセル範囲をコピーする
- 貼り付け先を右クリックし「形式を選択して貼り付け」を選ぶ
- 「値」を選んで貼り付ける
これで数式が消え、変換後の文字列だけが残ります。
元データを削除しても安全です。
UPPER関数の実務活用パターン
商品コードを大文字に統一する
商品コードが「abc-001」「Abc-002」のように混在していませんか?
表記がバラバラだと、目視確認やデータ連携でミスが起きやすくなります。
UPPER関数で大文字に統一しましょう。
=UPPER(A2)
A列のコードをすべて大文字に揃えるだけで、データの品質がぐっと上がります。
外部システムへの連携時にも、表記ゆれによるトラブルを防げますよ。
EXACT関数と組み合わせて大文字・小文字を無視して比較する
EXACT関数は大文字と小文字を区別して比較する関数です。
「ABC」と「abc」を比較するとFALSEが返ります。
逆に、大文字・小文字を無視して比較したい場面もありますよね。
そんなときは、両方をUPPERで揃えてからEXACTに渡します。
=EXACT(UPPER(A2), UPPER(B2))
A2が「Excel」、B2が「excel」でもTRUEになります。
ケースの違いを除外して、純粋に文字列の一致だけを確認できます。
TIP
ちなみにVLOOKUP関数は大文字・小文字を区別しません。「abc」と「ABC」は同じ値として扱われます。そのため、VLOOKUPの検索精度を上げる目的でUPPER変換する必要はありません。
TRIM・SUBSTITUTEと組み合わせてCSVクレンジングする
外部システムからCSVで取り込んだデータは厄介です。
大文字・小文字の混在、全角スペース、余計な空白が入り混じっていることが多いですよね。
UPPER関数とTRIM関数の組み合わせが定番です。
=UPPER(TRIM(A2))
TRIMで余分なスペースを除去し、UPPERで大文字に統一します。
たった1行で、2つのクレンジング処理を同時にこなせます。
さらに全角スペースも処理したいなら、SUBSTITUTE関数を加えます。
=UPPER(TRIM(SUBSTITUTE(A2, " ", " ")))
この数式は3段階で処理しています。
- SUBSTITUTE: 全角スペースを半角スペースに置換
- TRIM: 余分な半角スペースを除去
- UPPER: アルファベットを大文字に統一
CSV取り込み直後に隣の列へこの数式を入れて、まとめてクレンジングするのがおすすめです。
処理後は「値の貼り付け」で数式を消しておきましょう。
IF関数で大文字チェックする
「入力されたコードがすべて大文字かどうか」を確認したい場面もあります。
IF関数と組み合わせると、簡単にチェックできます。
=IF(A2=UPPER(A2), "OK", "大文字にしてください")
A2の値とUPPER変換後の値を比較しています。
一致すれば元から大文字なので「OK」、違えば小文字が混在している証拠です。
入力規則のチェック用として活用してみてください。
CONCAT関数でコードを生成する
部署コードと連番を結合して、大文字のIDを作りたいことがあります。
CONCAT関数と組み合わせましょう。
=UPPER(CONCAT(A2, "-", B2))
A2が「sales」、B2が「001」なら、結果は「SALES-001」です。
結合と大文字変換を1つの数式でまとめて処理できます。
UPPER・LOWER・PROPERの使い分け
Excelには、アルファベットのケースを変換する関数が3つあります。
文字変換関数の一覧比較表
| 関数 | 動作 | 変換例(元: excel function) | 主な用途 |
|---|---|---|---|
| UPPER | すべて大文字に変換 | EXCEL FUNCTION | 商品コード・管理番号の統一 |
| LOWER | すべて小文字に変換 | excel function | メールアドレス・URLの統一 |
| PROPER | 単語の先頭だけ大文字 | Excel Function | 人名・タイトルの整形 |
使い分けのポイントはシンプルです。
商品コードやIDはUPPER、メールアドレスはLOWER、人名はPROPERが定番です。
また、全角・半角の変換が必要な場合はASC関数やJIS関数も合わせて覚えておきましょう。
よくあるエラーと対処法
UPPER関数はシンプルな関数なので、エラーが起きるケースは限られています。
| 症状 | 原因 | 対処法 |
|---|---|---|
| 変換されない | 引数が数値のみ | 数値はアルファベットではないため正常動作。変換対象外です |
| #NAME? | 関数名のスペルミス | 「UPER」「UPPR」になっていないか確認してください |
| #VALUE! | 配列の書き方が非対応 | 単一セル参照に変更するか、スピル対応の書き方にしましょう |
| 全角文字が変換されない | 対象は全角アルファベットのみ | 全角アルファベット(a〜z)は変換されます。全角カタカナ・漢字は変換対象外です |
TIP
UPPER関数は数値や日本語を渡してもエラーになりません。変換対象のアルファベットがなければ、入力値がそのまま返ります。
まとめ
UPPER関数は =UPPER(文字列) と書くだけで、アルファベットをすべて大文字に変換できる関数です。
- 引数は文字列の1つだけ
- 半角だけでなく、全角アルファベットも大文字に変換できる
- 数字・記号・日本語は変換されずにそのまま残る
- 商品コードや管理番号の表記統一に便利
- CSV取り込み後はTRIM関数・SUBSTITUTE関数との組み合わせでクレンジング
- 小文字変換はLOWER関数、先頭大文字はPROPER関数を使い分けましょう
関連記事
- ExcelのLOWER関数の使い方|アルファベットを小文字に変換する方法
- ExcelのPROPER関数の使い方|単語の先頭を大文字に変換する方法
- ExcelのEXACT関数の使い方|2つの文字列を正確に比較する方法
- ExcelのSUBSTITUTE関数の使い方|文字列を置き換える方法
- ExcelのTRIM関数の使い方|余分なスペースを一括削除する方法
- ExcelのIF関数の使い方|条件分岐の基本から応用まで解説
- ExcelのCONCAT関数の使い方|複数の文字列をまとめて結合する方法
- ExcelのASC関数の使い方|全角を半角に一括変換する方法
- JIS関数の使い方
- ExcelのVLOOKUP関数の使い方|データ検索の基本
- ExcelのTEXT関数の使い方|表示形式を自由に指定して文字列に変換する方法
