ASC関数の基本的な使い方(スプレッドシート)
「電話番号やカタカナが全角と半角でバラバラ…」。データを整えようとして、こんな状態に出くわしたことはありませんか?
VLOOKUPやSUMIFSで集計すると、全角と半角が混在しているだけで不一致になります。手作業で直すのは現実的ではありませんよね。
そんなときに使えるのがASC関数です。全角文字を半角にサッと変換してくれます。この記事ではASC関数の基本から、データクレンジングの実務パターン、JIS関数との逆関数関係まで解説しますよ。
読み方と語源
ASC関数の読み方は「アスキー」です。文字コード規格「ASCII(American Standard Code for Information Interchange)」に由来します。ASCIIは半角英数字の文字コード体系なので「ASC = 半角にする」と覚えてください。
構文と引数の説明
ASC関数の構文はこちらです。
=ASC(文字列)
| 引数 | 必須/省略可 | 説明 |
|---|---|---|
| 文字列 | 必須 | 半角に変換したい文字列またはセル参照 |
引数は1つだけなのでとてもシンプルです。セル参照を渡すのが基本的な使い方ですよ。
基本的な書き方の例
A1に「Excel」と全角で入力されている場合を見てみましょう。
=ASC(A1)
→ 「Excel」
全角の英字がすべて半角に変換されました。数字も同様です。
=ASC("12345")
→ 「12345」
文字列を直接指定することもできます。ただし実務ではセル参照を使うのが一般的ですよ。
ASC関数の変換対象一覧
どの文字がASC関数で変換されるか、一覧表でまとめます。
| 文字種 | 変換前(全角) | 変換後(半角) | 変換される? |
|---|---|---|---|
| 英字 | A〜Z, a〜z | A〜Z, a〜z | される |
| 数字 | 0〜9 | 0〜9 | される |
| カタカナ | ア〜ン | ア〜ン | される |
| 記号 | @、#、$ など | @、#、$ など | される |
| 全角スペース | 「 」 | 「 」 | される |
| ひらがな | あ〜ん | — | されない |
| 漢字 | 東京、大阪 | — | されない |
ひらがなと漢字には半角文字が存在しないため、変換されずそのまま残ります。「全角カタカナを半角カタカナに変えたくない」場合は、ASC関数の後にカタカナだけ戻す処理が必要です。
ASC関数の実務パターン集
電話番号を半角に統一する
電話番号の全角半角を統一する例です。A列に電話番号が入っているとします。
=ASC(A2)
→ 「03−1234−5678」→「03-1234-5678」
全角のハイフンも半角に変換されます。電話番号の書式がバラバラなデータでも、ASC関数を通すだけで統一できますよ。
カタカナを半角に変換する
商品コードや顧客名に全角カタカナが混在している場合です。
=ASC("カタカナ")
→ 「カタカナ」
半角カタカナは読みにくいと感じる方もいるかもしれません。逆に半角→全角に変換したい場合はJIS関数を使ってくださいね。
TRIM + ASCでデータクレンジング
データクレンジングでは複数の関数を組み合わせるのが定番です。全角半角の統一に加えて、余分なスペースも除去しましょう。
=TRIM(ASC(A2))
この数式は2つのステップで動きます。
- ASC関数が全角→半角に変換する
- TRIM関数が前後のスペースと連続スペースを除去する
さらに改行やタブも除去したい場合はCLEAN関数を追加します。
=TRIM(ASC(CLEAN(A2)))
特定の文字を置き換えたいときはSUBSTITUTE関数も組み合わせます。たとえば全角スペースだけを取り除くにはこう書きます。
=SUBSTITUTE(ASC(A2), " ", "")
データクレンジングの定番フロー
CLEAN(制御文字除去)→ ASC(半角統一)→ TRIM(スペース整理)の順に適用すると、大半の不要文字を一掃できます。VLOOKUPやSUMIFSの条件不一致もこれで解消しやすくなりますよ。
JIS関数との違い・使い分け(逆関数関係)
ASC関数とJIS関数は「半角↔全角」の逆の関係にあります。セットで覚えておくと便利です。
比較表
| 項目 | ASC | JIS |
|---|---|---|
| 変換方向 | 全角→半角 | 半角→全角 |
| 読み方 | アスキー | ジス |
| 用途 | データの半角統一 | 表示用に全角統一 |
| 逆関数 | JIS | ASC |
| 引数 | 文字列(1つのみ) | 文字列(1つのみ) |
逆変換の確認
ASC関数とJIS関数を連続で適用すると、元の文字列に戻ります。
=JIS(ASC("Excel"))
→ 「Excel」(元に戻る)
つまり ASC(JIS(文字列)) = 文字列 が成り立ちます。
どちらを使うべきか
次の基準で選んでみてください。
- データベースや集計に使うデータ → ASC(半角に統一)
- 印刷物・帳票で見やすくしたい → JIS(全角に統一)
- CSVインポート後のクレンジング → ASC(半角統一が基本)
実務ではASC関数を使う場面のほうが圧倒的に多いです。集計や検索で使うデータは半角に統一するのが定石ですよ。
よくあるエラーと対処法
ASC関数で発生しやすいトラブルをまとめます。
| エラー・症状 | 原因 | 対処法 |
|---|---|---|
| 変換されない文字がある | ひらがな・漢字は半角が存在しない | 仕様どおりの動作。変換対象一覧を確認 |
| カタカナが半角になって読みにくい | ASC関数はカタカナも半角にする | JIS関数でカタカナだけ全角に戻す |
| VLOOKUPが不一致のまま | 元データと検索値の両方に適用していない | 両方のセルにASC関数を適用する |
| 数値がテキストのまま | ASC関数は文字列を返す | VALUE関数で数値に変換する |
いちばん多いのが「片方だけASCを適用している」ケースです。VLOOKUPやSUMIFSで使うなら、元データと条件値の両方にASC関数を適用してくださいね。
数式で変換したデータを値として確定したいときは、コピー→「値のみ貼り付け」で元のセルに上書きしましょう。
まとめ
スプレッドシートのASC関数の使い方を振り返りましょう。
| 項目 | 内容 |
|---|---|
| 読み方 | アスキー |
| 機能 | 全角文字を半角文字に変換する |
| 構文 | =ASC(文字列) |
| 変換対象 | 英数字・カタカナ・記号・全角スペース |
| 非変換 | ひらがな・漢字 |
| 逆関数 | JIS(半角→全角) |
データの集計や検索で全角半角の不一致に悩んでいるなら、まずASC関数で半角に統一してみてください。TRIM関数やCLEAN関数と組み合わせれば、データクレンジングの大半をカバーできますよ。
Excel版のASC関数についてはこちらの記事で詳しく解説しています。
ExcelのASC関数の使い方
