Excelには様々なデータの置換を実行するための関数や計算手順が存在します。以下はその一部です。
置換 (SUBSTITUTE) 関数
ExcelのSUBSTITUTE関数は、セルのテキスト内で特定の文字列を新しい文字列に置換します。これは特に、特定のパターンまたは文字を他のものに置き換える必要がある場合に便利です。
データが次のような形式で提供されているとします:
A列 | B列 |
---|---|
1 | テスト – 123 |
2 | テスト – 456 |
3 | テスト – 789 |
4 | テスト – 321 |
5 | テスト – 654 |
上記のデータでは、「テスト – 数字」の形式で情報が格納されています。ここで、”テスト – “の部分を空白(“”)に置換したいとします。
SUBSTITUTE関数を使うことで、「テスト – 」を消すことができます。C列に以下の関数を入力してみましょう:
=SUBSTITUTE(B1, "テスト – ", "")
それをC列全体に適用すると、以下のようになります:
A列 | B列 | C列 |
---|---|---|
1 | テスト – 123 | 123 |
2 | テスト – 456 | 456 |
3 | テスト – 789 | 789 |
4 | テスト – 321 | 321 |
5 | テスト – 654 | 654 |
これにより、SUBSTITUTE関数を使用して特定の文字列を新しい文字列に置換することができました。
置換 (REPLACE) 関数
REPLACE関数は、指定した位置から始まる特定の数の文字を新しいテキストで置き換えることができます。
以下のようなデータがあると想定してみましょう:
A列 | B列 |
---|---|
1 | 123-456 |
2 | 789-012 |
3 | 345-678 |
4 | 901-234 |
5 | 567-890 |
ここで、ハイフンの前の3桁の数字をすべて「***」に置き換えたいとします。これにはREPLACE関数を用います。B列の数字を置き換えた結果をC列に出力します。
そのため、C列に以下の関数を入力します:
=REPLACE(B1, 1, 3, "***")
これをC列全体に適用すると、以下のようになります:
A列 | B列 | C列 |
---|---|---|
1 | 123-456 | ***-456 |
2 | 789-012 | ***-012 |
3 | 345-678 | ***-678 |
4 | 901-234 | ***-234 |
5 | 567-890 | ***-890 |
このようにREPLACE関数を使うと、指定した位置から始まる特定の数の文字を新しいテキストに置き換えることができます。本例では、各セルの最初の3文字(1から3文字目)を「***」に置き換えました。
IF関数と組み合わせた置換
IF関数を使用して特定の条件を満たす場合に値を置換することも可能です。
以下のようなデータがあると想定してみましょう:
A列 | B列 |
---|---|
1 | 赤 |
2 | 青 |
3 | 黄色 |
4 | 赤 |
5 | 緑 |
このデータで、色が「赤」のときだけそれを「白」に置き換えたいとします。この場合にはIF関数を使用して特定の条件を満たす場合に値を置換することができます。
具体的には、C列に以下の関数を入力します:
=IF(B1="赤", "白", B1)
この関数は、「もしB1セルの内容が”赤”であれば”白”を返し、それ以外の場合は元のB1セルの内容を返す」という意味になります。
これをC列全体に適用すると、以下のようになります:
A列 | B列 | C列 |
---|---|---|
1 | 赤 | 白 |
2 | 青 | 青 |
3 | 黄色 | 黄色 |
4 | 赤 | 白 |
5 | 緑 | 緑 |
このようにIF関数を使うと、特定の条件を満たす場合に値を置換することができます。本例では、「赤」を「白」に置き換えました。
VLOOKUP関数と組み合わせた置換
テーブルから置換するための新しい値を検索するためにVLOOKUP関数を使用することができます。
以下の2つの表を想定してみましょう:
表1:
A列 | B列 |
---|---|
1 | りんご |
2 | みかん |
3 | バナナ |
4 | りんご |
5 | ぶどう |
表2:
D列 | E列 |
---|---|
りんご | Apple |
みかん | Orange |
バナナ | Banana |
ぶどう | Grape |
表1のB列にある日本語のフルーツの名前を、表2に基づいて英語の名前に置換したいとします。この場合にはVLOOKUP関数を用いて表2から適切な英語の名前を引っ張ってきます。
具体的には、C列に以下の関数を入力します。第二引数の「範囲」はコピーに備えて絶対参照します。
=VLOOKUP(B1,$D$1:$E$4,2,FALSE)
この関数は、「B1セルの内容に一致するD列のセルを表2から探し、その行の2列目であるE列の値を返す」という意味になります。
これをC列全体に適用すると、以下のようになります:
A列 | B列 | C列 |
---|---|---|
1 | りんご | Apple |
2 | みかん | Orange |
3 | バナナ | Banana |
4 | りんご | Apple |
5 | ぶどう | Grape |
これにより、VLOOKUP関数を使用して特定の値を他の表から引き出して置換することができました。VLOOKUP関数は、テーブル内の情報を検索して置換するために非常に便利です。
コメント