置換したい時に便利な関数REPLACEとSUBSTITUTE。
本当は一部規則性のないデータだったので正規表現を使いたいところだったのですが、アドインをダウンロードするまでもない少ないデータだったので今回は関数で。
REPLACE関数
REPLACE関数は文字の開始位置とそこからの文字数を指定して置換します。
=REPLACE(指定セル,開始位置,文字数,置換後の文字)
下の画像であれば、
=REPLACE(A2,8,9,””)
・まずセル「A2」を指定、置換対象は(税〇,〇〇〇円)である
・8行目の( から置換対象のため、「8」
・( から )まで9文字あるので「9」
・今回、置換というより削除したかったので置換文字を入れていない「””」のみ
・8行目の( から置換対象のため、「8」
・( から )まで9文字あるので「9」
・今回、置換というより削除したかったので置換文字を入れていない「””」のみ
※今回、空白(文字列無し)に置換だったので、左だけ抽出するLEFT関数を使うべきだったというか選んだデータがよくないですね。
SUBSTITUTE関数
SUBSTITUTE関数は文字を指定して置換。
=SUBSTITUTE(指定セル,置換えたい文字,置換後の文字)
下の画像であれば、
=SUBSTITUTE(A2,”税”,”消費税”)
・まずセル「A2」を指定
・「税」を「消費税」に置換たいので「”税”,”消費税”」
・「税」を「消費税」に置換たいので「”税”,”消費税”」
これだけの置換だと、Ctrl + F で検索、一括置換と一緒というか早い。
SUBSTITUTE関数はテンプレート(ひな形)の一部に文字を入力するのに、大変便利である。
下の画像は、テンプレートとなるセルA1の中の<price>にセルB1の数値を入力しセルD1に表示している。
=SUBSTITUTE(A1,”<price>”,B1)
同時に<tax>にセルC1の数値を入れるには、
=SUBSTITUTE(SUBSTITUTE(A1,”<price>”,B1),”<tax>”,C1)
<tax>にも数値が入力され、文章ができあがりました!
※今回は事前に書式設定で「折り返して全体を表示」にしてます。
コメント