【完全攻略】スプレッドシートのテキスト関数5選!文字の抽出・分割・置換を自動化する方法

EXACT関数・MID関数 Googleスプレッドシート 関数 テキスト Googleスプレッドシート
記事内に広告が含まれています。
スポンサーリンク

「名簿の『氏名』を『姓』と『名』に分けたい……」「商品名の余計な文字を一括で消したい……」 そんな作業、まさか一つずつ手入力していませんか?

Googleスプレッドシートの「テキスト関数」を使いこなせば、何百行、何千行あるデータ編集も、数式ひとつで一瞬で終わります。

この記事では、文字の「判定」「検索」「抽出」「分割」「置換」という、実務で頻出する5つのシーンに分けて、最強の関数たちを分かりやすく解説します。これらをマスターして、地味で退屈な入力作業から卒業しましょう!

スポンサーリンク

EXACT関数

基本的な使い方

構文=EXACT(文字列1, 文字列2)

2 つの文字列が同一であるかを検証します。

出典:Google ドキュメント エディタ ヘルプ EXACT

説明を読んだ通りの機能です。2つの文字列が同じかどうか判断します。実際にどのように使うかは以下で詳しくご説明させて頂きます。

実際の使い方

EXACT関数

列Aと列Bの文字列が同じかどうか判断します。数式は以下になります。

=EXACT(A2,B2)

EXACT関数」は、文字列が同じであれば、「TRUE」を違う場合は、「FALSE」を返します。

EXACT関数

完全一致であれば「TRUE」を返しているのが分かると思います。1語でも大文字になっていたりしたら、「FALSE」を返しています。

EXACT関数」以外にも文字列が一致しているかどうかを判断する方法があります。「IF関数」、または単純に「」を使う方法です。しかし計算結果は「EXACT関数」とは違うものになりますので、何が違うのか、その違いについてみていきましょう。

他の方法との比較

EXACT関数、IF関数
  • EXACT関数:=EXACT(A2,B2)
  • IF関数:=IF(A2=B2,”=”,”FALSE”)
  • :=A2=B2

それぞれ数式を挿入してみました。「IF関数」のみ、正しい時は「”=”」、違う時は「”FALSE”」と指定しています。

EXACT関数、IF関数

IF関数」と「」は大文字と小文字を区別しないどころか、カタカナとひらがなでも区別しません。(但しスペースとアルファベットとかなの組み合わせは「FALSE」になります。)

このように、完全一致を検証するときは、「EXACT関数」を大文字や小文字を区別しない場合やカタカナとひらがなを区別しない一致を検証するときは、「IF関数」、または「」を使うようにしてください。

スポンサーリンク

FIND関数 & SEARCH関数

基本的な使い方

構文=FIND(検索文字列, 検索対象のテキスト, [開始位置])

構文=SEARCH(検索文字列, 検索対象のテキスト, [開始位置])

大文字小文字を区別して、特定の文字列がテキスト内で最初に現れる位置を返します。

出典:Google ドキュメント エディタ ヘルプFIND

大文字小文字を区別せずに、特定の文字列がテキスト内で最初に現れる位置を返します。

出典:Google ドキュメント エディタ ヘルプ SEARCH

全く同じ説明が書かれているようですが、違いが1点あります。それは大文字小文字を区別するかどうかの違いです。区別するのが「FIND関数」で、区別しないのが「SEARCH関数」になります。実際にどのように使うかは以下で詳しくご説明させて頂きます。

実際の使い方

FIND関数、SEARCH関数

「aftercoviAFTERCOVID」と書かれた文字から、「A」の位置が何番目にあるのか調べてみましょう。数式は以下になります。

  • FIND関数:=FIND(“A”,A2,1)
  • SEARCH関数:=SEARCH(“A”,A3,1)
FIND関数、SEARCH関数

FIND関数」では、大文字と小文字を区別しますので、大文字の「A」があるのは、10番目になります。「SEARCH関数」では、大文字と小文字を区別しませんので、1番目と表示されます。これらの関数は、実際に使用する時は、他の関数と組み合わせて利用されることが多いです。

LEN関数

基本的な使い方

構文=LEN(テキスト)

文字列の長さを返します。

出典:Google ドキュメント エディタ ヘルプ LEN

説明を読んだ通りの機能です。文字列の長さを返します。実際にどのように使うかは以下で詳しくご説明させて頂きます。

実際の使い方

LEN関数

セルA2の文字列を数えます。数式は以下になります。

=LEN(A2)

SPLIT関数 & JOIN関数

基本的な使い方

構文=SPLIT(テキスト, 区切り文字, [各文字での分割], [空のテキストを削除])

構文=JOIN(区切り文字, 値または配列1, [値または配列2, …])

指定した文字または文字列の前後でテキストを分割し、各部分を同じ行の別のセルに表示します。

出典:Google ドキュメント エディタ ヘルプ SPLIT

指定した区切り文字を使用して、1 つ以上の 1 次元配列の要素を結合します。

出典:Google ドキュメント エディタ ヘルプ JOIN

少し分かりにくい内容ですが、とても簡単に言うと、「SPLIT関数」は、1つのセルに書かれたテキストを分割し、「JOIN関数」は2つ以上のセルに分割されているテキストを結合させます。実際にどのように使うかは以下で詳しくご説明させて頂きます。

実際の使い方

SPLIT関数、JOIN関数

列Aにある氏名を、性と名に文化します。数式は以下になります。

=SPLIT(A3,” ”)

「A3」で分割するセルを指定して、「” ”」でどこで区切るかを指定しています。なお、A列にある氏名は、性と名の間には「全角のスペース」が入力されていますので、「” ”」の間も全角スペースを入力しています。半角スペースで入力されている場合は、半角スペースを入力してください。

SPLIT関数、JOIN関数

B列とC列に性と名が分割されて入力されました。続いてC列の性とD列の名を、「JOIN関数」を使って結合させます。数式は以下になります。

=JOIN(” “,B3:C3)

「” “」は半角スペースを空けています。

SPLIT関数、JOIN関数

性と名が、半角スペースを空けて結合されました。JOIN関数の詳しい使い方や、文字列を結合する関数については、以下の記事で詳しくご紹介させて頂いております。

MID関数

基本的な使い方

構文=MID(文字列, 開始位置, セグメントの長さ)

文字列のセグメントを返します。

出典:Google ドキュメント エディタ ヘルプ MID

説明は少し分かりにくいですが、簡単に言うと、「セルの途中から文字を抜き出す」ことになります。実際にどのように使うかは以下で詳しくご説明させて頂きます。

実際の使い方

MID関数

セルA2のテキストから、4番目から12文字のテキストを抜き出します。以下数式になります。

=MID(A2,4,12)

同様の関数として以下のものがあります。

  • RIGHT関数:指定した数値を、右からカウントします。
  • LEFT関数:指定した数値を、左からカウントします。

使い方は「MID関数」と同じ感じですが、引数は1つになります。

=RIGHT(A2,4)

SUBSTITUTE関数

基本的な使い方

構文=SUBSTITUTE(text_to_search, search_for, replace_with, [occurrence_number])

文字列内の既存のテキストを新しいテキストに置き換えます。

出典:Google ドキュメント エディタ ヘルプ SUBSTIUTE

構文は長く書かれているので難しそうですが、説明にある通り、テキストを他のテキストと置き換える関数になります。実際にどのように使うかは以下で詳しくご説明させて頂きます。

実際の使い方

SUBSTIUTE関数

セルA2にある「aftercoviAFTERCOVID」というテキストを、「AFTERCOVID」に置き換えます。数式は以下になります。

=SUBSTITUTE(A2,”aftercoviAFTERCOVID”,”AFTERCOVID”,1)

aftercoviAFTERCOVID」 の全文を変更しましたが、一部だけでも変更可能です。最後の「1」は省略しても問題ありません。また、同じ結果を得るのに全文を選択して、新しいテキストを入力しなくても、必要なテキストだけ抽出することも可能です。

=SUBSTITUTE(A2,”aftercovi”,””)

aftercoviAFTERCOVID」 から「aftercovi」だけを取り除いて、「AFTERCOVID」だけを表示させています。

置き換え機能との違い

SUBSTIUTE関数、検索と置換

Googleスプレッドシートには、同様の機能に、「検索と置換」があります。セルを選択して、メニューバーから「編集」→「検索と置換」をクリックします。(ショートカットキー、「CTRLH」でも表示されます)

SUBSTIUTE関数、検索と置換

「検索と置換」の編集画面が表示されますので、検索に「aftercovi」と入力し、検索の範囲を「A7」に指定、「大文字と小文字の区別」にチェックを入れて、一番下の「すべて置換」をクリックします。「aftercoviAFTERCOVID」 から「aftercovi」だけを取り除いてた、「AFTERCOVID」だけが表示されています。

SUBSTIUTE関数」を使うか、「検索と置換」のどちらを使うかは、元のデータの扱いによって決まります。「SUBSTIUTE関数」であれば、元のデータは残りますが、「検索と置換」を使うと元のデータは消えてしまいます。どちらを使うかはご利用の環境によって選択してください。

マスターが教える「テキスト関数」活用のツボ

  • 「半角スペース」と「全角スペース」の違いに注意!: SPLITやJOINで区切り文字を指定するとき、スペースの種類を間違えると正しく動きません。見た目では分かりにくいので、うまくいかない時はまずここを疑いましょう。
  • 数式の結果を「値」として確定させる: 関数の結果を別の場所にコピペしたいときは、『形式を選択して貼り付け』→『値のみ貼り付け』を使いましょう。これをしないと、元データを消したときにエラーになってしまいます。
  • 大文字・小文字を揃える関数もセットで: 検索の前に、UPPER(すべて大文字に)や LOWER(すべて小文字に)を使ってデータの表記を揃えておくと、検索の精度がグッと上がりますよ。
スポンサーリンク

まとめ

お疲れ様でした!文字操作のストレスを劇的に減らすテキスト関数の世界はいかがでしたか?

  • 厳密に同じか調べるならEXACT
  • 文字がどこにあるか探すならFIND / SEARCH
  • 区切り文字で分ける・つなぐならSPLIT / JOIN
  • 好きな場所から抜き出すならMID / LEFT / RIGHT
  • 別の文字にサクッと入れ替えるならSUBSTITUTE

最初は「難しそう」と感じるかもしれませんが、まずは一つの数式をコピーして使ってみるだけでOKです。数式が動いた瞬間の「おぉ!」という感動が、あなたのスキルアップの第一歩になります。

これらの関数を組み合わせることで、スプレッドシートでの表現力は無限に広がります。ぜひ、あなたの日常業務という「パズル」を、これらの関数で解いてみてくださいね!

今回も最後までお読みいただき、ありがとうございました。

コメント