Excelでの文字列の置換は、データの整理や編集作業において非常に便利な機能です。特に、REPLACE関数とSUBSTITUTE関数は、それぞれ異なる状況で役立つため、Excelを使いこなす上で知っておくべき関数です。この記事では、これら2つの関数の基本的な使い方から、実践的な使用例まで詳しく解説します。REPLACE関数は指定した位置から特定の長さの文字列を置き換えるのに対し、SUBSTITUTE関数は指定した文字列を検索し、置換するものです。どちらも文字列操作に強力な力を発揮するため、これらの使い方をマスターすれば、Excelでの作業が格段に効率化されることでしょう。
Excelで文字列を置き換える!REPLACE関数とSUBSTITUTE関数の使い方
Excelでは、文字列を置き換えるのに非常に便利な関数があります。それがREPLACE関数とSUBSTITUTE関数です。ここでは、これらの関数の使い方を詳しく説明します。
REPLACE関数とは
REPLACE関数は、文字列の指定した位置から指定した長さの文字を別の文字列に置き換える関数です。書式は以下の通りです。
=REPLACE(元の文字列, 開始位置, 置き換える長さ, 置き換える文字列) |
例えば、Hello Worldという文字列のWorldをExcelに置き換えたい場合、以下のように書きます。
=REPLACE(Hello World, 7, 5, Excel) |
SUBSTITUTE関数とは
SUBSTITUTE関数は、文字列の中の指定した文字列を別の文字列に置き換える関数です。書式は以下の通りです。
=SUBSTITUTE(元の文字列, 置き換えられる文字列, 置き換える文字列) |
例えば、Hello Worldという文字列のWorldをExcelに置き換えたい場合、以下のように書きます。
=SUBSTITUTE(Hello World, World, Excel) |
REPLACE関数とSUBSTITUTE関数の違い
REPLACE関数は置き換える位置と長さを指定するのに対し、SUBSTITUTE関数は置き換えたい文字列を直接指定します。
REPLACE関数の応用例
REPLACE関数を使えば、たとえば電話番号のハイフンを削除するなどの処理ができます。
=REPLACE(123-456-7890, 4, 1, ) |
=REPLACE(上記の結果, 7, 1, ) |
SUBSTITUTE関数の応用例
SUBSTITUTE関数は、特定の文字列を全て置き換えたい場合に便利です。例えば、スペースを全て消去するには以下のように書きます。
=SUBSTITUTE(Hello World, , ) |
Substitute関数とReplace関数の違いは何ですか?
基本的な違い
Substitute関数とReplace関数の基本的な違いは、置換の対象と置換の方法にあります。Substitute関数は、文字列中の特定の文字や文字列を別の文字や文字列に置換するための関数です。一方、Replace関数は、文字列中の指定した位置の文字を別の文字に置換するための関数です。
- Substitute関数は、文字列全体で特定の文字や文字列を検索し、置換を行います。
- Replace関数は、文字列中の指定した位置の文字を置換します。
- Substitute関数は、複数の置換対象文字列を一度に置換することができますが、Replace関数は一度に一つの置換しか行えません。
使用例
Substitute関数とReplace関数の使用例を見てみましょう。
- Substitute関数: =SUBSTITUTE(あいうえお, う, бот) この式は、あいうえおという文字列中のうをботに置換し、結果としてあい�avanaughておを返します。
- Replace関数: =REPLACE(あいうえお, 3, 1, bot) この式は、あいうえおという文字列の3番目の文字(う)をbotに置換し、結果としてあいbotえおを返します。
どちらを使用するべきか
Substitute関数とReplace関数のどちらを使用するべきかは、置換の目的と置換対象の文字列の特性によります。
- 文字列全体で特定の文字や文字列を置換する場合、Substitute関数を使用するべきです。
- 文字列中の特定の位置の文字を置換する場合、Replace関数を使用するべきです。
- 複数の置換対象文字列を一度に置換する必要がある場合、Substitute関数を使用するべきです。
エクセルでSubstitute関数で文字列の置換は?
エクセルでSubstitute関数を使用すると、文字列内の特定の文字または文字列を別の文字または文字列に置換できます。Substitute関数の基本的な構文は以下の通りです。
SUBSTITUTE(テキスト, 古い文字列, 新しい文字列, 置換回数)
Substitute関数の使い方
Substitute関数を使用するには、まず置換したい文字列が含まれたセルを指定します。その後、置換したい古い文字列と、新しい文字列を指定します。置換回数を指定しない場合、関数はすべての古い文字列を新しい文字列に置換します。
- テキスト: 置換対象の文字列が含まれたセルを指定します。
- 古い文字列: 置換したい古い文字列を指定します。
- 新しい文字列: 置換後の新しい文字列を指定します。
- 置換回数(オプション): 置換する回数を指定します。省略した場合、すべての古い文字列が置換されます。
Substitute関数の使用例
以下は、Substitute関数を使用して文字列を置換する例です。
- セルA1に「apple,banana,apple」が含まれている場合、=SUBSTITUTE(A1, apple, orange)と入力すると、結果は「orange,banana,orange」となります。
- セルA2に「Hello, World!」が含まれている場合、=SUBSTITUTE(A2, o, 0)と入力すると、結果は「Hell0, W0rld!」となります。
- セルA3に「123-456-7890」が含まれている場合、=SUBSTITUTE(A3, -, )と入力すると、結果は「1234567890」となります。
Substitute関数とReplace関数の違い
Substitute関数は、文字列内の特定の文字または文字列を置換するために使用されます。一方、Replace関数は、文字列内の指定された位置から始まる指定された長さの文字列を置換するために使用されます。
- Substitute関数は、置換する文字列を指定する必要がありますが、Replace関数は、置換を開始する位置と置換する文字列の長さを指定する必要があります。
- Substitute関数は、文字列内のすべての指定された文字列を置換できますが、Replace関数は、指定された位置から開始して指定された長さの文字列のみを置換します。
- Substitute関数は、置換回数を指定することで、置換する回数を制限できますが、Replace関数は、置換回数を指定するオプションがありません。
エクセルで文字列を置換するには?
エクセルで文字列を置換するには、「検索と置換」機能を使用します。以下の手順で行います。
1. 置換したい文字列が含まれたセルを選択します。
2. キーボードの「Ctrl」+「H」キーを同時に押すか、ホームタブの「検索と選択」ボタンから「置換」を選択します。
3. 「検索と置換」ダイアログボックスが表示されます。
4. 「検索」テキストボックスに、置換したい元の文字列を入力します。
5. 「置換」テキストボックスに、置換後の新しい文字列を入力します。
6. 「すべて置換」ボタンをクリックすると、選択範囲内の全ての該当する文字列が置換されます。
ワイルドカードを使用した置換
ワイルドカードを使用すると、より柔軟な検索と置換が可能になります。例えば、次のような使い方ができます。
- 「?」を使用すると、任意の1文字と一致します。例:「a?c」であれば、「abc」や「arc」などと一致します。
- 「」を使用すると、任意の0文字以上の文字列と一致します。例:「ac」であれば、「ac」や「applec」などと一致します。
- 「~」を使用すると、直後のワイルドカード文字をリテラル文字として扱います。例:「~?」であれば、「?」自身と一致します。
正規表現を使用した置換
エクセルでは、正規表現を使用して高度な検索と置換が可能です。正規表現を使うには、「検索と置換」ダイアログボックスの「オプション」ボタンをクリックし、「正規表現を使用」チェックボックスにチェックを入れてください。
- 正規表現を使って、特定のパターンに一致する文字列を検索できます。例:「[0-9]{3}-[0-9]{4}」であれば、「123-4567」のような電話番号と一致します。
- 「()」を使用すると、グループ化ができます。このグループを置換文字列で参照できます。
マを使用した置換の自動化
マを使って、置換作業を自動化することができます。以下の手順で行います。
- 「開発」タブの「マ」ボタンをクリックし、新しいマを作成します。
- VBAエディタで、置換のためのコードを記述します。例:「Cells.Replace 置換前文字列, 置換後文字列」と記述すると、すべてのシートのすべてのセルで置換が行われます。
- マを実行すると、指定した置換が自動的に行われます。
これらの方法を使って、エクセルでの文字列の置換を効率的に行うことができます。ワイルドカードや正規表現を上手に使い分けることで、より複雑な置換も可能になります。また、マを活用すれば、定期的に行う置換作業を自動化することができます。
エクセルのSubstitute関数で何個まで置き換えられますか?
Substitute関数の基本
Substitute関数は、Excelで文字列内の特定の文字または文字列を別の文字または文字列に置き換えることができる関数です。この関数を使って、文字列の置換を行うことができます。
- Substitute関数の書式:
=SUBSTITUTE(テキスト, 古い文字, 新しい文字, [ 置換回数 ])
- テキスト: 置換対象の文字列
- 古い文字: 置換される文字または文字列
- 新しい文字: 置換後の文字または文字列
- 置換回数: 置換する回数(省略可、省略した場合は全て置換)
置換回数について
Substitute関数で何個まで置き換えられますかという質問に関して、基本的には特定の制限はありません。置換回数を指定しない場合、対象の文字列内の古い文字がすべて新しい文字に置換されます。しかし、置換回数を指定することで、特定の回数だけ置換を行うことができます。
- 置換回数を指定しない場合: すべての古い文字が新しい文字に置換される
- 置換回数を指定する場合: 指定した回数分の古い文字が新しい文字に置換される
- 置換回数に負の数を指定した場合: エラー値 (VALUE!) が返される
Substitute関数の注意点
Substitute関数を使用する際には、いくつかの 注意点があります。
- 大文字と小文字は区別されます。
- ワイルドカード(アスタリスク()や疑問符(?))は使用できません。
- 置換回数に整数以外の値を指定した場合、エラー値 (VALUE!) が返されます。
よくある質問
REPLACE関数とSUBSTITUTE関数の違いは何ですか?
REPLACE関数とSUBSTITUTE関数の主な違いは、置換の方法にあります。REPLACE関数は、文字列の指定した位置から指定した長さの文字列を置換するのに対し、SUBSTITUTE関数は、文字列の中の指定した文字を置換します。したがって、REPLACE関数は位置と長さを指定して置換するのに対し、SUBSTITUTE関数は特定の文字を置換することが特徴です。
ExcelでREPLACE関数を使用する方法を教えてください。
REPLACE関数は次のような形式で使用します: REPLACE(元の文字列, 開始位置, 長さ, 置換する文字列)。例えば、文字列 あいうえお の3文字目から2文字を かき に置換したい場合は、=REPLACE(あいうえお, 3, 2, かき) と入力します。この場合、結果は あいかきお になります。
SUBSTITUTE関数を使って複数の文字を置換する方法は?
SUBSTITUTE関数は次のような形式で使用します: SUBSTITUTE(元の文字列, 置換する文字, 置換後の文字, 置換回数)。例えば、文字列 あいうえお の い をすべて え に置換したい場合は、=SUBSTITUTE(あいうえお, い, え) と入力します。この場合、結果は あえうえお になります。置換回数を指定することで、置換する回数を制限することもできます。
REPLACE関数とSUBSTITUTE関数を組み合わせて使用することはできますか?
はい、REPLACE関数とSUBSTITUTE関数を組み合わせて使用することができます。例えば、特定の位置の文字列を置換した後、その結果の文字列の中の特定の文字をさらに置換する、といった使い方が可能です。例えば、=SUBSTITUTE(REPLACE(あいうえお, 3, 2, かき), か, さ) と入力すると、まず あいうえお の3文字目から2文字を かき に置換し、その後 か を さ に置換するので、結果は あいさきお になります。

私は、生産性向上に情熱を持つデータ分析とオフィスツール教育の専門家です。20年以上にわたり、データ分析者としてテクノロジー企業で働き、企業や個人向けのExcel講師としても活動してきました。
2024年、これまでの知識と経験を共有するために、日本語でExcelガイドを提供するウェブサイト**「dataka.one」**を立ち上げました。複雑な概念を分かりやすく解説し、プロフェッショナルや学生が効率的にExcelスキルを習得できるようサポートすることが私の使命です。