今回ご紹介させて頂くのは、「テキスト」の関数になります。
とてもシンプルな関数が多いですが、ちょっと表を編集したい時に大変役立つ関数になりますので、一通り使い方を覚えておきましょう。
それでは早速ご紹介させて頂きます。
EXACT関数
基本的な使い方
構文=EXACT(文字列1, 文字列2)
Googleのヘルプには以下のように書かれています。
2 つの文字列が同一であるかを検証します。
説明を読んだ通りの機能です。
2つの文字列が同じかどうか判断します。
実際にどのように使うかは以下で詳しくご説明させて頂きます。
実際の使い方
列Aと列Bの文字列が同じかどうか判断します。
数式は以下になります。
=EXACT(A2,B2)
「EXACT関数」は、文字列が同じであれば、「TRUE」を違う場合は、「FALSE」を返します。
完全一致であれば「TRUE」を返しているのが分かると思います。
1語でも大文字になっていたりしたら、「FALSE」を返しています。
「EXACT関数」以外にも文字列が一致しているかどうかを判断する方法があります。
「IF関数」、または単純に「=」を使う方法です。
しかし計算結果は「EXACT関数」とは違うものになりますので、何が違うのか、その違いについてみていきましょう。
他の方法との比較
- EXACT関数:=EXACT(A2,B2)
- IF関数:=IF(A2=B2,”=”,”FALSE”)
- =:=A2=B2
それぞれ数式を挿入してみました。
「IF関数」のみ、正しい時は「”=”」、違う時は「”FALSE”」と指定しています。
「IF関数」と「=」は大文字と小文字を区別しないどころか、カタカナとひらがなでも区別しません。
(但しスペースとアルファベットとかなの組み合わせは「FALSE」になります。)
このように、完全一致を検証するときは、「EXACT関数」を大文字や小文字を区別しない場合やカタカナとひらがなを区別しない一致を検証するときは、「IF関数」、または「=」を使うようにしてください。
FIND関数 & SEARCH関数
基本的な使い方
構文=FIND(検索文字列, 検索対象のテキスト, [開始位置])
構文=SEARCH(検索文字列, 検索対象のテキスト, [開始位置])
Googleのヘルプには以下のように書かれています。
大文字小文字を区別して、特定の文字列がテキスト内で最初に現れる位置を返します。
大文字小文字を区別せずに、特定の文字列がテキスト内で最初に現れる位置を返します。
全く同じ説明が書かれているようですが、違いが1点あります。
それは大文字小文字を区別するかどうかの違いです。
区別するのが「FIND関数」で、区別しないのが「SEARCH関数」になります。
実際にどのように使うかは以下で詳しくご説明させて頂きます。
実際の使い方
「aftercoviAFTERCOVID」と書かれた文字から、「A」の位置が何番目にあるのか調べてみましょう。
数式は以下になります。
- FIND関数:=FIND(“A”,A2,1)
- SEARCH関数:=SEARCH(“A”,A3,1)
「FIND関数」では、大文字と小文字を区別しますので、大文字の「A」があるのは、10番目になります。
「SEARCH関数」では、大文字と小文字を区別しませんので、1番目と表示されます。
これらの関数は、実際に使用する時は、他の関数と組み合わせて利用されることが多いです。
LEN関数
基本的な使い方
構文=LEN(テキスト)
Googleのヘルプには以下のように書かれています。
文字列の長さを返します。
説明を読んだ通りの機能です。
文字列の長さを返します。
実際にどのように使うかは以下で詳しくご説明させて頂きます。
実際の使い方
セルA2の文字列を数えます。
数式は以下になります。
=LEN(A2)
SPLIT関数 & JOIN関数
基本的な使い方
構文=SPLIT(テキスト, 区切り文字, [各文字での分割], [空のテキストを削除])
構文=JOIN(区切り文字, 値または配列1, [値または配列2, …])
Googleのヘルプには以下のように書かれています。
指定した文字または文字列の前後でテキストを分割し、各部分を同じ行の別のセルに表示します。
出典:Google ドキュメント エディタ ヘルプ SPLIT
指定した区切り文字を使用して、1 つ以上の 1 次元配列の要素を結合します。
少し分かりにくい内容ですが、とても簡単に言うと、「SPLIT関数」は、1つのセルに書かれたテキストを分割し、「JOIN関数」は2つ以上のセルに分割されているテキストを結合させます。
実際にどのように使うかは以下で詳しくご説明させて頂きます。
実際の使い方
列Aにある氏名を、性と名に文化します。
数式は以下になります。
=SPLIT(A3,” ”)
「A3」で分割するセルを指定して、「” ”」でどこで区切るかを指定しています。
なお、A列にある氏名は、性と名の間には「全角のスペース」が入力されていますので、「” ”」の間も全角スペースを入力しています。
半角スペースで入力されている場合は、半角スペースを入力してください。
B列とC列に性と名が分割されて入力されました。
続いてC列の性とD列の名を、「JOIN関数」を使って結合させます。
数式は以下になります。
=JOIN(” “,B3:C3)
「” “」は半角スペースを空けています。
性と名が、半角スペースを空けて結合されました。
JOIN関数の詳しい使い方や、文字列を結合する関数については、以下の記事で詳しくご紹介させて頂いております。
MID関数
基本的な使い方
構文=MID(文字列, 開始位置, セグメントの長さ)
Googleのヘルプには以下のように書かれています。
文字列のセグメントを返します。
説明は少し分かりにくいですが、簡単に言うと、「セルの途中から文字を抜き出す」ことになります。
実際にどのように使うかは以下で詳しくご説明させて頂きます。
実際の使い方
セル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のヘルプには以下のように書かれています。
文字列内の既存のテキストを新しいテキストに置き換えます。
構文は長く書かれているので難しそうですが、説明にある通り、テキストを他のテキストと置き換える関数になります。
実際にどのように使うかは以下で詳しくご説明させて頂きます。
実際の使い方
セルA2にある「aftercoviAFTERCOVID」というテキストを、「AFTERCOVID」に置き換えます。
数式は以下になります。
=SUBSTITUTE(A2,”aftercoviAFTERCOVID”,”AFTERCOVID”,1)
「aftercoviAFTERCOVID」 の全文を変更しましたが、一部だけでも変更可能です。
最後の「1」は省略しても問題ありません。
また、同じ結果を得るのに全文を選択して、新しいテキストを入力しなくても、必要なテキストだけ抽出することも可能です。
=SUBSTITUTE(A2,”aftercovi”,””)
「aftercoviAFTERCOVID」 から「aftercovi」だけを取り除いて、「AFTERCOVID」だけを表示させています。
置き換え機能との違い
Googleスプレッドシートには、同様の機能に、「検索と置換」があります。
セルを選択して、メニューバーから「編集」→「検索と置換」をクリックします。
(ショートカットキー、「CTRL + H」でも表示されます)
「検索と置換」の編集画面が表示されますので、検索に「aftercovi」と入力し、検索の範囲を「A7」に指定、「大文字と小文字の区別」にチェックを入れて、一番下の「すべて置換」をクリックします。
「aftercoviAFTERCOVID」 から「aftercovi」だけを取り除いてた、「AFTERCOVID」だけが表示されています。
「SUBSTIUTE関数」を使うか、「検索と置換」のどちらを使うかは、元のデータの扱いによって決まります。
「SUBSTIUTE関数」であれば、元のデータは残りますが、「検索と置換」を使うと元のデータは消えてしまいます。
どちらを使うかはご利用の環境によって選択してください。
まとめ
ご紹介させて頂いた「テキスト」の関数は、構文自体はシンプルなものが多いです。
どの関数もデータを少し見やすくする機能がありますので、作成した表をもう少し見やすく出来ないかと感じた時に使用してみてください。
また、他の関数と組み合わせて使う機会の多い関数でもありますので、どのような時に組み合わせるべきか、色々な例題に触れておくと良いでしょう。
今回も最後までお読み頂きありがとうございました。
コメント