Excel 2010 文字列操作関数

  1. 文字列操作関数リストの表示
  2. 全角の英数カナ文字を半角に変換するASC関数
  3. 複数の文字列を1つの文字列にまとめるCONCATENATE関数
  4. 数値に$マークをつけて文字列に変換するDOLLAR関数
  5. 2つの文字列が同じかどうか判定するEXACT関数
  6. 文字列が他の文字列内で最初に現れる位置を求めるFIND関数
  7. 半角の英数カナ文字を全角に変換するJIS関数
  8. 文字列の先頭から指定された数の文字を求めるLEFT関数
  9. 文字列の長さを求めるLEN関数
  10. 英字を小文字に変換するLOWER関数
  11. 指定した位置から指定した数の文字列を求めるMID関数
  12. 数値を漢数字に変換するNUMBERSTRING関数
  13. 文字列の先頭を大文字に変換するPROPER関数
  14. 文字列中の指定した位置の文字を置き換えるREPLACE関数
  15. 指定した回数分文字列を表示するREPT関数
  16. 文字列の末尾から指定された数の文字を求めるRIGHT関数
  17. 指定した文字列が最初に現れる位置を求めるSEARCH関数
  18. 文字列中の指定した文字を置き換えるSUBSTITUTE関数
  19. 数値を文字列に変換するTEXT関数
  20. 不要なスペースを取り除くTRIM関数
  21. 英字を大文字に変換するUPPER関数
  22. 文字列として入力されている数字を数値に変換するVALUE関数

文字列操作関数を使用することでさまざまな形で文字列を扱うことができます。

サンプルデータcharacter-function_es.xlsx「文字列操作関数(演習)」を開きます。

尚、このマニュアルでは特に断らない限り、ショートカットキーで「関数の挿入」ダイアログ ボックスを開き、「関数の分類」から関数名のリストを表示させる手順で説明します。

その他の方法での関数の入力手順については関数の入力方法を参照してください。

文字列操作関数リストの表示

「関数の挿入」ダイアログ ボックスでは、以下の手順で文字列操作関数のリストを表示させることができます。

(注) 各関数の入力手順の説明は、関数名のリストが表示された状態から行います。


全角の英数カナ文字を半角に変換するASC関数

ASC関数は、全角の文字を半角に変換します。例えば、全角と半角が混在しているような場合、すべての文字列を半角に統一するのに便利です。

【書式】 =ASC(文字列)

【説明】 文字列: 必ず指定します。変換の対象となる文字列です。文字列に全角文字が含まれない場合は、変換は行われません。

ここでは、シート「ASC」のセルB6からB7に、セルA6からA7までの文字列を半角に変換して表示します。

シート「ASC」を選択します。


複数の文字列を1つの文字列にまとめるCONCATENATE関数

CONCATENATE関数は、複数の文字列を1つの文字列に結合します。結合できる文字列の数は、最大255個までです。例えば、別々のセルに入力されている文字列を1つのセルにまとめる場合に便利です。

【書式】 =CONCATENATE(文字列1,[文字列2],...)

【説明】 文字列1: 必ず指定します。結合対象となる1つ目の文字列です。文字列2,...: 省略可能です。追加の文字列です。「文字列1」を含めて最大255個まで指定できます。

【ワンポイント】 文字列を結合するには、演算子「&」(アンパサンド)を使用することもできます。

ここでは、シート「CONCATENATE」のセルB4に、セルA4からA5までの文字列と半角のスペースを結合して表示します。

シート「CONCATENATE」を選択します。


数値に$マークをつけて文字列に変換するDOLLAR関数

DOLLAR関数は、数値に$マークをつけます。小数点以下は、指定した桁で四捨五入されます。また、位取りの「,」(コンマ)も付加されます。

【書式】 =DOLLAR(数値,[桁数])

【説明】 数値: 必ず指定します。$マークをつける対象となる数値です。

桁数: 省略可能です。小数点以下の桁数を指定します。負の値を指定すると、整数桁に四捨五入されます。省略した場合は、標準の桁数が設定されます。

ここでは、シート「DOLLAR」のセルB4に、セルA4の数値に$マークをつけて表示します。「桁数」は標準設定を使用します。

シート「DOLLAR」を選択します。


2つの文字列が同じかどうか判定するEXACT関数

EXACT関数は、2つの文字列を比較してその結果を返します。同じ場合は「TRUE」を、異なっている場合は「FALSE」を返します。

英字の大文字と小文字は区別されますが、書式設定の違いは区別されません。

【書式】 =EXACT(文字列1,文字列2)

【説明】 文字列1: 必ず指定します。一方の文字列です。文字列2: 必ず指定します。もう一方の文字列です。

ここでは、シート「EXACT」のセルC4に、セルA4とB4を比較した結果を、セルC5に、セルA5とB5を比較した結果を表示します。

シート「EXACT」を選択します。


文字列が他の文字列内で最初に現れる位置を求めるFIND関数

FIND関数は、検索文字列で指定した文字列を検索し、その文字列が最初に現れる左端からの文字位置を番号で返します。

大文字と小文字は区別されますが、半角と全角は区別されません。また、ワイルドカード文字は使用できません。大文字と小文字を区別しないで検索したり、ワイルドカード文字を使用する場合は、SEARCH関数を使用します。

【書式】 =FIND(検索文字列,対象,[開始位置])

【説明】 検索文字列: 必ず指定します。検索する文字列です。対象: 必ず指定します。検索対象となる文字列です。

開始位置: 省略可能です。検索を開始する位置を番号で指定します。省略すると、1を指定したとみなされます。

ここでは、シート「FIND」のセルC4に、セルB4の対象文字列をセルA4の文字列で検索した結果を表示します。「開始位置」は指定せず、文字列の最初から検索します。

シート「FIND」を選択します。


半角の英数カナ文字を全角に変換するJIS関数

JIS関数は、半角文字を全角に変換します。例えば、半角と全角が混在しているような場合に、すべてを全角に統一するときに便利です。

【書式】 =JIS(文字列)

【説明】 文字列: 必ず指定します。全角に変換する文字列です。

文字列に半角文字が含まれない場合は変換されません。

ここでは、シート「JIS」のセルB4からB5に、セルA4からA5の文字列を全角に変換して表示します。

シート「JIS」を選択します。


文字列の先頭から指定された数の文字を求めるLEFT関数

LEFT関数は、文字列の先頭から指定した数の文字を返します。半角と全角は区別されず、1文字はすべて「1」としてカウントされます。

【書式】 =LEFT(文字列,[文字数])

【説明】 文字列: 必ず指定します。取り出す文字を含む文字列です。文字数: 省略可能です。取り出す文字数です。省略すると「1」とみなされます。半角と全角は区別されません。

ここでは、シート「LEFT」のセルB4からB5に、セルA4からA5の文字列のうち、左から3文字を取り出します。

シート「LEFT」を選択します。


文字列の長さを求めるLEN関数

LEN関数は、文字列の文字数を返します。

【書式】 =LEN(文字列)

【説明】 文字列: 必ず指定します。文字数を調べる文字列です。半角と全角は区別されません。また、スペースもカウントされます。

ここでは、シート「LEN」のセルB4からB5に、セルA4からA5の文字列の文字数を表示します。

シート「LEN」を選択します。


英字を小文字に変換するLOWER関数

LOWER関数は、英字を小文字に変換します。例えば、文字列中に大文字と小文字が混在しているような場合に、すべてを小文字に変換するときに便利です。

【書式】 =LOWER(文字列)

【説明】 文字列: 必ず指定します。小文字に変換する文字列です。全角の英字の場合も変換されます。英字以外の文字は変換されません。

ここでは、シート「LOWER」のセルB4からB5に、セルA4からA5の文字列を小文字で表示します。

シート「LOWER」を選択します。


指定した位置から指定した数の文字列を求めるMID関数

MID関数は、文字列の中の任意の位置から指定した文字数の文字を返します。半角と全角は区別されず、1文字はすべて「1」としてカウントされます。

【書式】 =MID(文字列,開始位置,文字数)

【説明】 文字列: 必ず指定します。取り出す文字を含む文字列です。開始位置: 必ず指定します。取り出す先頭文字の位置を数値で指定します。文字数: 必ず指定します。取り出す文字数です。

ここでは、シート「MID」のセルB4に、セルA4の文字列のうち、左から4文字目から2文字を取り出します。

シート「MID」を選択します。


数値を漢数字に変換するNUMBERSTRING関数

NUMBERSTRING関数は、数値を指定した形式の漢数字に変換します。例えば、領収書などで漢数字を使用したい場合に便利です。

ただし、漢数字に変換すると文字列となるため、計算はできなくなります。

【書式】 =NUMBERSTRING(数値,漢数字の種類)

【説明】 数値: 必ず指定します。漢数字に変換する数値です。漢数字の種類: 必ず指定します。変換したい漢数字の種類を1〜3で指定します。

数値が「12345」の場合、変換する漢数字の種類には以下の3つがあります。

変換後説明
1一万二千三百四十五数値の大きさに応じて新字体の漢数字に変換
2壱萬弐阡参百四拾伍数値の大きさに応じて旧字体の漢数字に変換
3一二三四五数値の大きさに関係なく新字体に変換

【ワンポイント】 この関数はExcelの関数リストにはありませんので、直接セルに入力します。

ここでは、シート「NUMBERSTRING」のセルB4からB6に、セルA4からA6の数値を、指定した形式の漢数字で表示します。

その際、B4には「形式1」、B5には「形式2」、そしてB6には「形式3」で表示します。

シート「NUMBERSTRING」を選択します。


文字列の先頭を大文字に変換するPROPER関数

PROPER関数は、英単語の先頭文字を大文字に変換します。指定範囲内に複数の英単語がある場合、すべての単語の先頭文字が大文字になります。

【書式】 =PROPER(文字列)

【説明】 文字列: 必ず指定します。先頭を大文字に変換する英単語が含まれる文字列です。

全角の英字の場合も変換されます。英字以外の文字は変換されません。

ここでは、シート「PROPER」のセルB4からB6に、セルA4からA6の英単語の先頭を大文字に変換して表示します。

シート「PROPER」を選択します。


文字列中の指定した位置の文字を置き換えるREPLACE関数

REPLACE関数は、文字列中の指定した文字数の文字を別の文字に置き換えます。

文字列中の指定した文字を置き換える場合は、SUBSTITUTE関数を使用します。

【書式】 =REPLACE(文字列,開始位置,文字数,置換文字列)

【説明】 文字列: 必ず指定します。置き換えを行う文字列です。開始位置: 必ず指定します。置換文字列と置き換える先頭文字の位置です。

文字数: 必ず指定します。置換文字列と置き換える文字数です。置換文字列: 必ず指定します。置き換える文字列です。

ここでは、シート「REPLACE」のセルC4からC5に、セルA4からA5の先頭から4文字目から5文字を、セルB4からB5の文字列に置き換えて表示します。

シート「REPLACE」を選択します。


指定した回数分文字列を表示するREPT関数

REPT関数は、文字列を指定した回数だけ繰り返して表示します。例えば、「*」(アスタリスク)などのマークをセル内に複数表示する場合に便利です。

【書式】 =REPT(文字列,繰り返し回数)

【説明】 文字列: 必ず指定します。繰り返す文字列です。繰り返し回数: 必ず指定します。繰り返す回数を正の数値で指定します。

ここでは、シート「REPT」のセルB4に、セルA4の内容を4回繰り返して表示します。

シート「REPT」を選択します。


文字列の末尾から指定された数の文字を求めるRIGHT関数

RIGHT関数は、文字列の末尾から指定した数の文字を返します。半角と全角は区別されず、1文字はすべて「1」としてカウントされます。

【書式】 =RIGHT(文字列,[文字数])

【説明】 文字列: 必ず指定します。取り出す文字を含む文字列です。文字数: 省略可能です。取り出す文字数です。省略すると「1」とみなされます。半角と全角は区別されません。

ここでは、シート「RIGHT」のセルB4に、セルA4の文字列のうち、右から3文字を取り出します。

シート「RIGHT」を選択します。


指定した文字列が最初に現れる位置を求めるSEARCH関数

SEARCH関数は、検索文字列で指定した文字列を検索し、その文字列が最初に現れる左端からの文字位置を番号で返します。

半角と全角は区別され、ワイルドカード文字が使用できます。ただ、大文字と小文字は区別されません。大文字と小文字を区別して検索するにはFIND関数を使用します。

また、ワイルドカード文字「?」や「*」を通常の文字として検索する場合は、その文字の前に「"~?"」や「~"*"」のように、半角の「~(チルダ)」をつけます。

【書式】 =SEARCH(検索文字列,対象,[開始位置])

【説明】 検索文字列: 必ず指定します。検索する文字列です。対象: 必ず指定します。検索対象となる文字列です。

開始位置: 省略可能です。検索を開始する位置を番号で指定します。省略すると、1を指定したとみなされます。

ここでは、シート「SEARCH」のセルC4に、セルB4の対象文字列をセルA4の文字列で検索した結果を表示します。「開始位置」は指定せず、文字列の最初から検索します。

シート「SEARCH」を選択します。


文字列中の指定した文字を置き換えるSUBSTITUTE関数

SUBSTITUTE関数は、文字列中の指定した文字を別の文字に置き換えます。

文字列中の指定した位置にある文字を置き換える場合は、REPLACE関数を使用します。

【書式】 =SUBSTITUTE(文字列,検索文字列,置換文字列,[置換対象])

【説明】 文字列: 必ず指定します。置き換えを行う文字列です。検索文字列: 必ず指定します。検索する文字列です。

置換文字列: 必ず指定します。置き換える文字列です。

置換対象: 省略可能です。文字列に含まれる何番目の検索文字列を置換するかを数値で指定します。

省略した場合は、文字列中のすべての検索文字列が置換の対象となります。

ここでは、シート「SUBSTITUTE」のセルD4に、セルA4の文字列のうち、セルB4の検索文字列を、セルC4の置換文字列で置き換えて表示します。

シート「SUBSTITUTE」を選択します。


数値を文字列に変換するTEXT関数

TEXT関数は、数値を文字列に変換します。また、さまざまな表示形式を指定することにより、数値を読みやすい書式で表示させることができます。

例えば、「円」や「/h」などといった文字列と組み合わせて表示させることもできます。

【書式】 =TEXT(数値,表示形式)

【説明】 数値: 必ず指定します。文字列に変換する数値です。表示形式:必ず指定します。数値や日付の表示形式を指定します。

具体的な表示形式の指定方法については、TEXT 関数 - Excel - Office.comを参照してください。

ここでは、シート「TEXT」のセルB4に、セルA4の数値を文字列に変換して「\マーク」と位取りの「,」(コンマ)をつけて表示します。

シート「TEXT」を選択します。


不要なスペースを取り除くTRIM関数

TRIM関数は、文字列に複数のスペースが連続して含まれている場合、スペースを1つだけ残して残りを削除します。

例えば、テキストデータなどから読み込んだ文字列の不要なスペースを取り除くときに便利です。

文字列間のスペースは1つは残りますが、先頭と末尾にあるスペースはすべて削除されます。

【書式】 =TRIM(文字列)

【説明】 文字列: 必ず指定します。スペースを取り除く文字列です。

ここでは、シート「TRIM」のセルB4に、セルA4の文字列からスペースを取り除いて表示します。

シート「TRIM」を選択します。

(注) この場合、「 東京都 港区六本木 」のうち、先頭と末尾のスペースはすべて取り除かれ、文字列間のスペースは、1つを残して削除されます。


英字を大文字に変換するUPPER関数

UPPER関数は、英字を大文字に変換します。例えば、文字列中に大文字と小文字が混在しているような場合に、すべてを大文字に変換するときに便利です。

【書式】 =UPPER(文字列)

【説明】 文字列: 必ず指定します。大文字に変換する文字列です。全角の英字の場合も変換されます。英字以外の文字は変換されません。

ここでは、シート「UPPER」のセルB4からB5に、セルA4からA5の文字列を大文字で表示します。

シート「UPPER」を選択します。


文字列として入力されている数字を数値に変換するVALUE関数

VALUE関数は、数値を表す文字列を数値に変換します。

【書式】 =VALUE(文字列)

【説明】 文字列: 必ず指定します。数値に変換する文字列です。

ここでは、シート「VALUE」のセルB4に、セルA4の文字列を数値に変換して表示します。

シート「VALUE」を選択します。

操作の結果はサンプルデータcharacter-function_kk.xlsx「文字列操作関数(結果)」をご覧ください。