いまさら聞けないExcelの使い方講座
【Excel】関数いらず! 文字列の一括削除や書き換えを標準機能で効率的に
2023年10月11日 06:55
文字列の書き換えなら関数を覚えてなくても大丈夫
文字列の一部を一括で削除したり、書き換えたりしたい場合どうしますか? 10箇所以上を修正するなら、手作業ではつらいですよね。エクセルに慣れている人は関数を使いたくなると思いますが、エクセルの標準機能で解決することも多いのです。
例えば、以下のような表に入力されたメールアドレスから「@」より前を取り出す場合、関数を使うと「=LEFT(C2,FIND("@",C2)-1)」のような数式が考えられます。FIND関数で「@」の位置を探して、その1つ前までLEFT関数で取り出します。
元の文字列を残しておけることと、汎用的に利用できるのが関数のメリットですが、単純に「@」より前の文字列を取り出したいだけなら、複数の関数をネストするのは大げさですよね。
別の例として、型番などに含まれる2つの「-」に挟まれた文字列を取り出す場合の数式はもっと複雑です。2つの「-」の位置を探して、足し算と引き算しているだけですが、慣れないうちは誰かのヘルプが必至です。
「-」の間の文字列が欲しいだけなのに数式の難易度が高いですよね。このようなケースでも、誰でも簡単にデータを整えられる方法があります。いずれも基本的な機能ですが、効率アップに繋がりますよ。
すべての文字を指すワイルドカード「*」
「@」より前を取り出すのは『「@」より後ろをすべて削除する』のと同じ意味です。[検索と置換]ダイアログボックスで一気に解決しましょう。検索キーワードとしてワイルドカードの「*」(アスタリスク)を組み合わせます。
「フラッシュフィル」で解決
「-」に挟まれた文字列を抜き出す場合は[検索と置換]ダイアログボックスよりも「フラッシュフィル」をおすすめします。ショートカットキーは[Ctrl]+[E]です。一瞬で処理が完了します。
データによって、1,2つのサンプルを入力する必要がありますが、複雑な関数を使うより圧倒的に簡単ですよね。先ほどの「@」より前を取り出す例でも「フラッシュフィル」は利用できます。
エクセルの標準機能を使いこなそう
データが追加されていくような表では関数のほうが便利かもしれませんが、目の前にあるデータを処理したい時にはエクセルの標準機能も便利です。状況に応じて使い分けられるようにぜひ覚えておいてください。