エクセルで先頭の文字を消す・削除する際に、「特定の文字だけ消したい」「一括で削除する方法はあるの?」と困った経験はありませんか?
先頭の文字を削除するにはMID関数やRIGHT関数・SUBSTITUTE関数などを使う方法があり、データの種類や削除したい文字数に応じて使い分けることができます。
この記事では【Excel】エクセルで先頭の文字を消す・削除する方法(関数・一括・LEFT・MID)について解説していきます。
・SUBSTITUTE関数で先頭の特定文字を削除する
・フラッシュフィルや置換機能で一括削除する方法
それでは詳しく見ていきましょう。
先頭の文字を削除する方法の使い分け
先頭の文字を削除する方法はいくつかありますが、削除したい内容によって最適な方法が異なります。
先頭から決まった文字数を削除したい場合はMID関数またはRIGHT関数が適しており、先頭にある特定の文字列を削除したい場合はSUBSTITUTE関数や置換機能が便利です。
大量データを一括で処理したい場合はフラッシュフィルも有効な選択肢になります。
それぞれの方法を具体的に確認していきましょう。
先頭の文字を削除する方法1【MID関数で先頭からN文字を削除する】
先頭から指定した文字数を削除するには、MID関数を使うのが最もシンプルです。
サンプルデータを確認しましょう。

各データの先頭にある「★」を削除して商品名だけを取り出す場合、MID関数を使います。
MID関数の構文は以下の通りです。
第1引数に元のデータのセルを指定し、第2引数に削除したい文字数の次の位置(先頭から1文字削除する場合は2)、第3引数に取り出す文字数を指定します。
第3引数には十分に大きな数(例:100)を指定することで、残りの文字列をすべて取り出せます。
B2セルに以下の数式を入力します。

A2セルの「★桜餅」から2文字目以降の文字列が取り出され、「桜餅」が返されます。
B2セルをB6セルまでコピーすると全データの先頭1文字が一括で削除されます。
先頭から2文字削除したい場合は第2引数を3に変更し、3文字削除したい場合は4に変更することで対応できます。
LEN関数と組み合わせて可変長に対応する方法
削除後の文字数が一定でない場合は、LEN関数と組み合わせることで正確に取り出せます。
LEN(A2)-1で元の文字数から削除する1文字分を引いた文字数を第3引数に渡すことで、文字数が異なるデータでも正確に先頭1文字だけを削除できます。
先頭の文字を削除する方法2【RIGHT関数で先頭からN文字を削除する】
RIGHT関数とLEN関数を組み合わせることでも、先頭からN文字を削除することができます。
RIGHT関数は文字列の右端から指定した文字数を取り出す関数であるため、全体の文字数から削除したい文字数を引いた値を第2引数に指定します。

LEN(A2)でA2セルの全文字数を取得し、そこから1を引いた文字数分だけ右端から取り出すことで、先頭1文字が削除された文字列が返されます。
「★桜餅」の場合、LEN(“★桜餅”)=3となり、RIGHT(“★桜餅”, 3-1)=RIGHT(“★桜餅”, 2)で「桜餅」が返されます。
MID関数との違いは記述のシンプルさにあり、先頭からN文字削除するだけならRIGHT関数+LEN関数のほうが直感的に書けることが多いです。
先頭から2文字消したい場合
先頭から2文字削除したい場合は上記の数式にて
=LEN(A2)-2、
3文字削除したい場合は
=LEN(A2)-3
とするだけでOKです!
先頭の文字を削除する方法3【SUBSTITUTE関数で特定の文字を削除する】
削除したい文字が「★」や「※」のような特定の文字列である場合は、SUBSTITUTE関数を使うと文字の位置に関係なく削除できます。
SUBSTITUTE関数の構文は以下の通りです。
第3引数に空文字(””)を指定することで、指定した文字を削除(空文字に置換)することができます。

この数式でA2セル内の「★」がすべて空文字に置換され、削除されます。
MID関数やRIGHT関数と異なり、文字の位置を気にせずに特定の文字を削除できるのがSUBSTITUTE関数の強みです。
ただし先頭だけでなく文字列中のすべての該当文字が削除されるため、先頭にのみ特定文字がある場合に使うのが適しています。
先頭の文字を削除する方法4【置換機能・フラッシュフィルで一括削除する】
関数を使わずに先頭の文字を一括削除する方法として、置換機能とフラッシュフィルがあります。
置換機能で一括削除する方法
Ctrl + Hキーで「検索と置換」ダイアログを開きます。
「検索する文字列」に削除したい先頭の文字(例:★)を入力し、「置換後の文字列」は空欄のままにします。
「すべて置換」をクリックすると、シート内のすべての「★」が一括削除されます。

置換機能は元のセルの値を直接書き換えるため、関数のように別のセルに結果を出力するのではなくデータそのものを変更したい場合に適しています。
フラッシュフィルで一括削除する方法
B2セルに手動で削除後の正しい値(例:桜餅)を入力してEnterキーを押します。
B3セルに移動してCtrl + Eキーを押すと、エクセルがパターンを認識してB列全体に自動入力します。
フラッシュフィルはパターンが複雑な場合でも対応できることがありますが、データによっては正しく認識されない場合もあるため、結果を必ず確認しましょう。
まとめ エクセルで先頭の文字を消す・削除(関数・2文字も・一括・セルの最初・同じ文字列・LEFT・MID)
エクセルで先頭の文字を削除する方法をまとめると、先頭からN文字を削除する場合はMID関数(=MID(A2, 2, 100))またはRIGHT関数+LEN関数(=RIGHT(A2, LEN(A2)-1))が適しています。
特定の文字列を削除したい場合はSUBSTITUTE関数で空文字に置換する方法が位置を問わず使えて便利です。
元のデータを直接書き換えたい場合はCtrl + Hの置換機能が、パターンから自動入力したい場合はCtrl + Eのフラッシュフィルが有効です。
削除したい内容が「文字数固定」か「特定の文字列」かによって使う関数を使い分けることで、さまざまな先頭文字の削除に対応できます。
目的に合った方法を選んで、データの整形作業を効率よく進めていきましょう。


コメント