5/09/2022

Excel。セル内の「*」だけを手早く削除したいけど、どうしたらいいの【Asterisk】

Excel。セル内の「*」だけを手早く削除したいけど、どうしたらいいの

<置換:「~*」, REPLACE+FIND関数>

意外と簡単な処理と思っていても、実際やってみると、上手くいかないとか、面倒な処理だったというケースは多々あります。


例えば、セル内の「*(アスタリスク)」だけを取り除きたい、消したい場合もそのケースの一つだといえます。


次の表を用意しました。


B列のセルには、「*(アスタリスク)」が含まれています。

この「*(アスタリスク)」だけを取り除きたいわけですね。


関数をつかって対応する方法もあります。

C2の数式は、

=REPLACE(B2,FIND("*",B2,1),1,"")

と設定してあります。


オートフィルを使って数式をコピーすることで、セル内から「*(アスタリスク)」を取り除くことができました。


REPLACE関数は指定の場所を置換することができる関数なので、指定の場所はFIND関数をつかいます。

「*(アスタリスク)」がセル内の左から何文字目にあるのかを算出することで、「*(アスタリスク)」を取り除くことができたわけです。


このように、関数をつかった方法でもいいのですが、もっと楽にセル内の「*(アスタリスク)」を取り除くことができます。


それは「置換」です。

置換をつかうことで、新たに列を設ける必要もありませんし、試行錯誤しなら数式を設定する必要もありません。


ただし、「置換」で処理するにあたり、注意するポイントがありますので、確認しておきましょう。


対象範囲のB2:B5を範囲選択します。

ホームタブの「検索と選択」にある「置換」をクリックします。


検索と置換ダイアログボックスが表示されます。


オプションは特に設定しません。


検索する文字列に「~*」(チルダ+アスタリスク)と入力したら、設定完了です。


「すべて置換」をクリックします。


これで、「*(アスタリスク)」を手早く取り除くことができました。


ポイントは「~*」(チルダ+アスタリスク)だということ。


単純に「*(アスタリスク)」を「検索する文字列」に入力して、実行すると、すべての文字が空白に置換されてしまいます。


今回のように、一見簡単そうに思える作業でも、実際処理してみると、スムーズに処理できないこともあるようですね。


また、関数を使えば、セルの途中だけなど、細かく設定することも可能なので、色々な対応方法を増やしていくといいかもしれませんね。