下のような、Excel(エクセル)で作った社員の姓名(漢字)とフリガナ、ローマ字のリストがあったとします。
姓と名の間に空白が入っていたり、カタカナが全角と半角が混ざっている箇所もあります。また、アルファベットも大文字と小文字が混ざっています。
統一感が無く、見づらいよね。。。
・姓と名の間の空白を無くす
・フリガナを全角に統一する
・アルファベットを大文字に統一する
こういったこと↑をやるために、一つ一つ手作業で修正していくと非常に手間がかかります。。
今日は、このようにゴチャゴチャした文字列を整える関数を紹介したいと思います。
1、半角を全角へ変換する JIS 関数、全角を半角へ変換する ASC 関数
半角を全角へ変換する JIS 関数
JIS 関数を用いれば、半角のカタカナ、アルファベット、数値などを全角に変換することができます。
JIS 関数は、「=JIS(文字列)」のように記述します。
例えば、下のようにセル「C3」に書かれた半角カタカナを全角に変換する場合を考えてみましょう。
セル「D3」に「=JIS(C3)」と入力します。
すると、C3の半角カタカナが全角に変換されます。
全角を半角へ変換する ASC 関数
ASC 関数を用いれば、全角のカタカナ、アルファベット、数値などを半角に変換することができます。
(JIS 関数とは逆の働きをするということです。)
JIS 関数は、「=ASC(文字列)」のように記述します。
セルC3の全角カタカナを半角に変換するために、D3に「=ASC(C3)」と入力しましょう。
全角カタカナが半角に変換されるのが確認できます。
2、小文字を大文字へ変換する UPPER 関数、大文字を小文字へ変換する LOWER 関数
小文字を大文字へ変換する UPPER 関数
アルファベットの小文字を大文字に変換するためには、UPPER 関数を使います。
UPPER 関数は、「=UPPER(文字列)」のように記述します。
セルC3のアルファベットの小文字を大文字に変換するために、D3に「=UPPER(C3)」と入力しましょう。
全ての小文字が大文字に変換されました。
大文字を小文字へ変換する LOWER 関数
UPPER 関数とは逆に、大文字を小文字へ変換するためには LOWER 関数を使います。
LOWER 関数は、「=LOWER(文字列)」のように記述します。
セルC3のアルファベットの大文字を小文字に変換するために、セルD3に「=LOWER(C3)」と入力してみましょう。
全ての大文字が小文字に変換されるのが確認できます。
3、文字列の置換えをする SUBSTITUTE 関数
次に文字列の置換えをする SUBSTITUTE 関数について説明します。
SUBSTITUTE 関数は「=SUBSTITUTE(文字列,検索文字列,置換文字列)」のように書きます。
・「文字列」は、置換えをしたい文字列(検索文字列)を含む文字列
・「検索文字列」は他の文字列(置換文字列)に置換えをしたい文字列
・「置換文字列」は置換え後の文字列
を意味します。
例えば、セルC3の文字列に含まれる全角スペースを無くしたい場合を考えてみます。
セルD4に「=SUBSTITUTE(C3,” ”,””)」と入力してみましょう。
文字列は “(ダブルクオテーション) で囲って表記することに注意しましょう。
全角スペースであれば、 “(ダブルクオテーション)で全角スペースを囲って「” ”」のように書きます。
“(ダブルクオテーション)を2つ並べた場合「””」は空白を意味します。
したがって、先ほど入力した「=SUBSTITUTE(C3,” ”,””)」はセルC3の中にある、全角スペースを空白に置換えよ!と指示していることになるのです。
これにより、文字列の中にある全ての全角スペースが無くなりました(空白になりました)。
また同様に半角スペースを空白に置き換える場合にも使えます。その場合には、D3に「=SUBSTITUTE(C3,” “,””)」のように入力します。
4、複数の関数を折り混ぜて使う
さて、冒頭で出した表を先に紹介した関数を用いて整理してみたいと思います。
先の表の下側に、変換した表を作ります。
まず、姓名(漢字)の中に含まれる全角スペースを消したいと思います。
SUBSTITUTE 関数を使います。
「=SUBSTITUTE(SUBSTITUTE(B2,” ”,””),” “.””)」
全角スペースを消した文字列からさらに、半角スペースを取り除きます。
「=SUBSTITUTE(SUBSTITUTE(B2,” ”,””),” “.””)」
のように記述します。
次にフリガナを全て全角にしたいと思います。
JIS 関数を使います。
全角に置き換えたフリガナの中に含まれる全角スペースを消したいと思います。
SUBSTITUTE 関数を使います。
「=SUBSTITUTE(SUBSTITUTE(JIS(C2),” ”,””),” “.””)」
最後に、ローマ字を全て大文字にしたいと思います。
UPPER 関数を使います。
関数を埋め込んだ14列目から表の一番下までを選択します(セルB14〜D23 を選択)。
その状態で、「Ctrl + D」を押しましょう。
これにより、一番上の列と同じ数式が他のセルにも入り、文字列が整理されます。
5、まとめ
文字列を整えるのに使える関数を5つ紹介しました。
これらの関数を用いれば、労力をかけずに文字列を置き換えることができます。
一つ一つ手直しで整えるのは大変なので、このようなケースに遭遇したら、これらの関数を用いて文字列を整えるようにしましょう。