5/16/2020

Excel。決まった場所にハイフンなどの文字を割り込ます(追加)方法を確認してみよう。【interrupt】

Excel。決まった場所にハイフンなどの文字を割り込ます(追加)方法を確認してみよう。

<MID関数>

CSVファイルやTEXTファイルをExcelに読み込んだあとに、データを修正したいことは多々あります。

例えば、次のようなケース。

郵便番号のフィールドが、ハイフンがなかったので、7ケタの数値で読み込んでいます。

このままでも支障はないのかもしれませんが、3桁と4桁の間に「-(ハイフン)」をいれて郵便番号と見てわかるように、変更したいのが、今回の目的です。

件数が少なければ、自力で「-(ハイフン)」を入力していくというのアリなのかもしれませんが、時間がかかりますし、面倒です。

文字をコントロールする時に考えるのは、文字列の左側からか、右側からなのか?それとも、文字列の中間なのかによって、使う関数が異なってきます。

今回は、左から3文字目と4文字目の間に「-(ハイフン)」を入れたいので、MID関数を使うことで、解決することができます。

B2に数式を設定します。
=MID(A2,1,3)&"-"&MID(A2,4,4)

オートフィルで数式をコピーしてみましょう。

「-(ハイフン)」を文字列に挿入することができました。

確かに目的は達成したのですが、MID関数を2回使っており、数式がわかりにくいので、REPLACE関数をつかうことで、もっとシンプルに同じことを行うことができます。

B列を削除して、改めて、REPLACE関数を使って数式を作っていきますので、REPLACE関数ダイアログボックスを表示します。

文字列には、A2。
開始位置には、4。
これは、4文字目のところに「-(ハイフン)」をいれたいので、4と設定します。

文字数には、「0」。
1にすると、4文字目から1文字目の文字を次の置換文字列と置換するという処理のための引数です。

今回は、文字と置換するのではなく、そこに挿入したいわけですよね。
文字と文字の間に割り込ます場合は、文字列を0にすればいいわけです。

REPLACE関数は、置換する関数というイメージがあるので、なかなか、文字を割り込ます・追加するこの発想は浮かびませんね。

そして、置換文字列は、「-(ハイフン)」を設定します。
あとは、OKボタンをクリックして、オートフィルで数式をコピーしてみましょう。

なお、B2の数式は、
=REPLACE(A2,4,0,"-")

確認してもらうと、先程のMID関数同様に、「-(ハイフン)」を3文字目と4文字目の間に追加することができました。

REPLACE関数のほうがMID関数よりも馴染みが薄いかもしれませんが、知っておくといざという時に便利な関数かもしれませんね。

なお、MID関数であれ、REPLACE関数であれ、注意しないといけないのは、今回のデータは、全部のデータに「-(ハイフン)」が入っていなかったということです。

「-(ハイフン)」があったりなかったりすると、当然、条件分岐が必要になってきます。