誰でもできる!Excelで特定の文字列を簡単に取り出す

文字列操作

Excelはデータ分析や整理に欠かせないツールですが、大量のデータの中から特定の文字列を見つけ出したいとき、どうすればいいでしょうか。例えば、「2022/03/04」から「年」、「月」、「日」だけ文字列を取り出したいときがあると思います。今回、この記事では、Excelで特定の文字列を簡単に抽出する方法を、初心者にもわかりやすく説明します。

文字列を抽出する基本関数

Excelは文字列を扱うための関数がいくつかありますが、特定の文字列を抽出する際によく使われるのは「LEFT」「MID」「RIGHT」「FIND」「SEARCH」の5つです。

これらの関数を上手く組み合わせることで、さまざまな文字列操作が可能になります。

LEFT関数:文字列の左側を抽出

=LEFT(文字列, 文字列の左側から指定した文字数を取得)

LEFT関数は、指定したセルの文字列から左側にある特定の数の文字を抽出します。

例えば、セルA1に2024/04/01という文字列があります。この文字から年の2024を取り出したい場合は、B1のセルにLEFT(A1, 4)とすると、セルA1の文字列の左から4文字を取り出します。

年を抽出

RIGHT関数:文字列の右側を抽出

RIGHT(文字列, 文字列の右側から指定した文字数を取得)

RIGHT関数は、LEFT関数の逆で、文字列の右側から特定の数の文字を抽出します。例えば、セルA1に2024/04/01という文字列の日にち、01を取り出したい場合はRIGHT(A1,2)と記述すると、セルA1の文字列の右から2文字を取り出すことができます。

日を抽出

MID関数:文字列の中央を抽出

MID(文字列, 文字列の左位置から文字数を取得, 文字数)

MID関数は、文字列の任意の位置から指定した数の文字を抽出します。例えば、2024/04/01の月04を取り出したい場合は MID(A1, 6, 2)とすると、セルA1の文字列の6文字目から2文字を取り出します。

月を抽出

FIND / SEARCH関数:文字列内の文字の位置を見つける

FIND関数とSEARCH関数は、ある文字列内で特定の文字や語句が最初に現れる位置を数値で返します。これらは文字列を抽出する際に、どこから抽出を始めればいいかを知るために使います。FINDは大文字と小文字を区別し、SEARCHは区別しません。

実践:特定の文字列を抽出する

FIND関数(大文字小文字を区別する)

FIND(検索文字列,対象文字列,[開始位置])

SEARCH関数(大文字小文字を区別しない)

SEARCH(検索文字列,対象文字列[開始位置])

両方の関数とも3番目の引数[開始位置]は省略することが出来ます。「検索文字列」に「対象文字列」が複数ある場合に、何番目の「検索文字列」の位置を数えるかを指定する場合に使用します。

例として、「info@example.com」からドメイン名「example.com」を抽出する方法を見てみましょう。

複数のデータからドメインを抽出したい場合、抽出したい場所が不特定の位置になります。そこで、FINDやSEARCH関数の出番です。

ドメインの開始位置を見つけるためにB1に FIND(“@”, A1) と入力します。これでA1セルのinfo@example.comの「@」の位置5番目であることがわかります。

@の位置を調べる

次に文字列を抽出するためにMID関数を使用します。

ドメインを抽出するため MID(A1, FIND(“@”, A1) + 1, LEN(A1) – FIND(“@”, A1))を使って、ドメイン名を抽出します。LEN(A1)はセルA1の文字数を返し、そこから”@”の位置を引くことで、抽出する文字数を計算しています。

ドメインを抽出する

まとめ

Excelで特定の文字列を抽出する方法は、文字データを整理をする上で非常に便利です。この記事で紹介した基本的な関数をマスターすれば、複雑な文字列操作も怖くありません。実際に手を動かしながら、これらの関数の使い方をぜひ習得して頂ければ幸いに思います。