【エクセル】ExcelとGoogleスプレッドシートで文字の種類を判別する数式
はじめに
日々の業務でExcelやGoogleスプレッドシートを使用する際、特定の文字(ひらがな、カタカナ、アルファベット、数字、漢字)を自動的に判別できたら便利だと思ったことはありませんか?この記事では、ExcelとGoogleスプレッドシートでUnicodeを活用して、簡単にこれらの文字を判別する方法をご紹介します。
数式(エクセル/Googleスプレッドシート共通)
=IF(AND(UNICODE(LEFT(D1,1))>=12352,UNICODE(LEFT(D1,1))<=12447),"ひらがな",
IF(AND(UNICODE(LEFT(D1,1))>=12448,UNICODE(LEFT(D1,1))<=12543),"カタカナ",
IF(OR(AND(UNICODE(LEFT(D1,1))>=65,UNICODE(LEFT(D1,1))<=90),AND(UNICODE(LEFT(D1,1))>=97,UNICODE(LEFT(D1,1))<=122),AND(UNICODE(LEFT(D1,1))>=65313,UNICODE(LEFT(D1,1))<=65338),AND(UNICODE(LEFT(D1,1))>=65345,UNICODE(LEFT(D1,1))<=65370)),"アルファベット",
IF(AND(UNICODE(LEFT(D1,1))>=48,UNICODE(LEFT(D1,1))<=57),"数字",
IF(AND(UNICODE(LEFT(D1,1))>=19968,UNICODE(LEFT(D1,1))<=40959),"漢字","その他")))))
上記の数式を使うと、セル内の先頭文字が「ひらがな」、「カタカナ」、「アルファベット(全角・半角)」、「数字」、「漢字」のいずれかを簡単に判定できます。
数式の説明
Unicodeという「コンピュータ上でさまざまな文字や記号を一意に識別するための国際的な文字コード規格」を使っています。ExcelやGoogleスプレッドシートでは、UNICODE関数を使って、各文字のUnicodeコードポイントを取得し、その値に基づいて文字の種類を判別することができます。
1.ひらがな: Unicode範囲12352~12447(ひらがな)の場合、「ひらがな」を表示。
2.カタカナ: Unicode範囲12448~12543(カタカナ)の場合、「カタカナ」を表示。
3.アルファベット: 以下の範囲でアルファベットと判定。
• 半角大文字: Unicode範囲65~90
• 半角小文字: Unicode範囲97~122
• 全角大文字: Unicode範囲65313~65338
• 全角小文字: Unicode範囲65345~65370
4.数字: Unicode範囲48~57の場合、「数字」を表示。
5.漢字: Unicode範囲19968~40959の場合、「漢字」を表示。
6.その他は「その他」と表示。
エクセルのイメージ
仮にひらがなだけを判別したい場合
=IF(AND(UNICODE(LEFT(D1,1))>=12352,UNICODE(LEFT(D1,1))<=12447), "ひらがな", "その他")
上記のようなコードになります
まとめ
ExcelやGoogleスプレッドシートでのUnicodeを使った文字判別は非常に便利です。特に、データの中で特定の文字を区別したい場合や、自動化された処理を行いたい場合に大いに役立ちます。この方法を活用して、日常業務の効率をさらに高めましょう!
お知らせ
ヒヨコ歩数計という歩きながらヒヨコが育っていくアプリを作って、いろんな方に結構使ってもらっています。RealmSwift, Admobの動画・インステ・バナー広告、UICollectionView、iOS-Charts、UITableViewを使用しているので、是非ご利用ください!