【Excel】エクセルで右から1文字を削除する方法(文字列を切り取る関数)
Excelで商品コード、管理番号、住所、氏名などを扱っていると、文字列の末尾に付いた不要な1文字だけを削除したい場面があります。
たとえば「ABC123X」から末尾の「X」を除き、「ABC123」に整えたい場合です。
手作業で修正すると件数が増えたときに時間がかかり、元データを書き換えるミスも起こりやすくなります。
このような処理は、文字列操作に使うLEFT関数とLEN関数を組み合わせる方法を覚えると、数式だけで安定して実行できます。
右から1文字を削除する基本式
=LEFT(A2,LEN(A2)-1)
この記事では、エクセルで文字列の右端を切り取る関数、空白や特定文字を扱うときの考え方、数式をコピーするときの注意点まで詳しく解説します。
サンプルデータは1行目を見出し行、2行目以降をデータ行として説明します。
RIGHTではなくLEFT関数で右端を削除する方法
| A列 元の文字列 | B列 結果 |
|---|---|
| ABC123X | ABC123 |
| 東京支店A | 東京支店 |
| 商品番号9 | 商品番号 |
それではまず、右端の文字を除いた文字列を作る最も基本的な方法について解説していきます。
結論として、元のセルの文字数を数え、その数から1を引いた文字数だけ左側から取り出します。
数式はB2セルに入力し、下方向へコピーする方法が基本です。
LEFT関数とLEN関数を組み合わせる数式
B2セルへ、=LEFT(A2,LEN(A2)-1) と入力します。
この数式のLEN(A2)は、A2セルに入力されている文字数を取得する部分です。
たとえばA2が「ABC123X」の場合、LEN(A2)の結果は7になります。
そこから-1を行うため、LEFT関数には6という文字数が渡されます。
LEFT(A2,6)はA2の左端から6文字を取り出すので、結果は「ABC123」です。
元データの文字数が毎行異なっていても自動対応できることが、この式の大きな利点です。
数式の構造
LEFT(対象セル,文字数)
LEN(対象セル)-1 により、末尾を除いた文字数を指定します。
セル参照のA2は、数式を下へコピーするとA3、A4のように自動で変化します。
データ件数が多いときほど、1件ずつ編集せず関数で処理する価値があります。

【操作のポイント】数式を入力するセルは元データと別列にし、結果を確認してから必要に応じて値へ貼り付けます。
オートフィルで複数行へ反映する操作
B2セルに数式を入力した後、セル右下に表示される小さな四角のフィルハンドルを利用します。
フィルハンドルを下へドラッグすれば、同じ仕組みの数式を下の行へコピーできます。
A列に連続したデータがある場合は、フィルハンドルをダブルクリックする方法も便利です。
Excelは隣接するデータ範囲を目安にして、数式を最終行付近まで自動入力します。
コピー後はB列の数式を選択し、数式バーで参照先がA3、A4と変化しているか確認しましょう。
表示結果だけでなく、数式の参照先も確認する習慣を付けると、誤った列を加工する事故を防げます。
途中に空白行があるとダブルクリックでは途中までしかコピーされないことがあります。
その場合は対象範囲を選択してCtrlキーとDキーを押すか、フィルハンドルを必要な行までドラッグします。

【操作のポイント】オートフィル後は先頭行と最終行の結果を見比べ、すべての文字列で末尾だけが削除されているか確認します。
数式の結果を値として固定する手順
LEFT関数で作成したB列の結果は、A列の元データが変わると連動して変化します。
一時的な加工で終わるなら数式のままで問題ありませんが、提出用データや他システムへ渡すデータでは値として確定したいこともあります。
その場合はB列の対象セルをコピーし、同じ場所または別の場所で値の貼り付けを実行します。
Windows版Excelでは、コピー後に右クリックし、貼り付けオプションの値を選びます。
ショートカット操作に慣れている場合は、CtrlキーとCキーでコピーし、値貼り付けのメニューを選択しても構いません。
値に変換すると数式へ戻すには再入力が必要なので、元データを残してから処理するのが安全です。
安全な作業順序
元データを複製する
別列に数式を入れる
結果を確認する
必要な場合だけ値へ変換する
【操作のポイント】元のA列を直接削除や上書きで加工せず、まずB列に結果を出すと、誤操作があっても復旧しやすくなります。
文字数を指定して末尾を切り取る関数の仕組み
| A列 | 削除文字数 | 結果 |
|---|---|---|
| ABCD-001-Z | 1 | ABCD-001- |
| ABCD-001-Z | 2 | ABCD-001 |
| ABCD-001-Z | 3 | ABCD-00 |
続いては、文字数を自由に変えながら右側を切り取る関数の考え方を確認していきます。
末尾を2文字以上削除する式

右から2文字を削除したい場合は、=LEFT(A2,LEN(A2)-2) を使用します。
右から3文字を除くなら、数式の最後を-3に変更します。
つまり、削除したい文字数をLEN関数の結果から引くという考え方です。
LEFT関数は残したい文字数を指定する関数であり、削除したい文字数を直接指定する関数ではありません。
右からn文字を削除する一般形
=LEFT(A2,LEN(A2)-n)
nの部分を削除したい文字数に置き換えます。
商品コードの末尾に毎回2桁の枝番がある場合など、削除する桁数が決まっているデータで活用しやすい式です。
ただし、文字数が短いデータまで一律に処理すると意図しない結果になる可能性があります。
【操作のポイント】削除する文字数を変更したら、文字数の短いデータも含めて結果を確認します。
削除する文字数をセルで管理する方法

数式内の-1や-2を直接変更する代わりに、削除文字数を別セルに入力して管理する方法もあります。
たとえばD1セルに削除したい文字数として1を入力し、B2セルには=LEFT(A2,LEN(A2)-$D$1) と入力します。
この数式では、D1セルの値を変えるだけでB列全体の削除文字数を切り替えられます。
$D$1のドル記号は絶対参照です。
数式を下方向へコピーしても、削除文字数を参照するセルがD1からずれないようにする役割があります。
条件を1か所にまとめると、修正漏れを減らせます。
例としてD1に2を入力した場合
B2の数式は =LEFT(A2,LEN(A2)-$D$1)
右端から2文字を除いた結果が表示されます。
部署ごとや帳票ごとに削除する桁数が異なる場合にも、設定値をセルで持つ方法は役立ちます。
【操作のポイント】削除数を入力するセルには、何を指定する欄か分かる見出しを付けておくと、後から見直すときに安心です。
RIGHT関数とMID関数との使い分け
RIGHT関数は右端から指定文字数を取り出すための関数です。
そのため、右端を削除して左側を残す目的には、LEFT関数の方が式を自然に書けます。
一方で「ABC123X」から右端のXだけを抽出したいなら、=RIGHT(A2,1) が適しています。
MID関数は文字列の途中から指定文字数を取り出す関数です。
先頭と末尾を両方除きたい場合には、MID関数を使う選択肢があります。
残したい範囲が左側ならLEFT、右側ならRIGHT、途中ならMIDと考えると、関数を選びやすくなります。
目的に合う関数を使うと、後から数式を見た人にも処理内容が伝わりやすくなります。
【操作のポイント】右端を除いた残り全体が必要なら、RIGHT関数で考え込まずLEFT関数を選ぶと作業が簡単です。
末尾の特定文字と空白を削除する応用
| A列 元データ | B列 処理後 |
|---|---|
| 東京営業部 | 東京営業部 |
| 見積書.pdf | 見積書 |
| 製品A | 製品 |
続いては、末尾の文字が常に不要とは限らないデータで使える応用方法を確認していきます。
TRIM関数で末尾の余分な空白を整える方法
削除したい対象が文字ではなく空白である場合は、LEFT関数よりTRIM関数が適しています。
B2セルに=TRIM(A2) と入力すると、文字列の前後にある余分な半角スペースを削除できます。
途中に複数ある半角スペースも、原則として1つのスペースに整えられます。
末尾にあるものが本当に1文字なのか、空白なのかを先に見分けることが重要です。
全角スペースが混じっている場合は、TRIM関数だけでは期待どおりに消えないことがあります。
その場合はSUBSTITUTE関数で全角スペースを半角スペースへ置き換え、TRIM関数を組み合わせる方法を検討します。
全角スペースも整理する例
=TRIM(SUBSTITUTE(A2,” ”,” “))
見た目では空白に見えても、半角と全角で処理が異なる点に注意しましょう。
【操作のポイント】文字列の末尾を削る前に、数式バーで余分な空白や記号が含まれていないか確認します。
拡張子など決まった末尾だけを除く条件式
ファイル名の「.pdf」や「.xlsx」のように、特定の末尾だけを削除したい場合があります。
たとえばA2の末尾が「.pdf」のときだけ削除するには、=IF(RIGHT(A2,4)=”.pdf”,LEFT(A2,LEN(A2)-4),A2) という式を使えます。
IF関数は条件によって処理を分ける関数です。
RIGHT(A2,4)で最後の4文字を取り出し、それが「.pdf」と一致するかを調べます。
一致したときだけLEFT関数で4文字を除き、一致しない場合はA2をそのまま表示します。
条件を付けると、本来残すべき文字列を誤って短縮するリスクを減らせます。
条件付きで末尾を削除する式
=IF(RIGHT(A2,4)=”.pdf”,LEFT(A2,LEN(A2)-4),A2)
| A | B | C | |
|---|---|---|---|
| 1 | ファイル名 | 結果 | |
| 2 | 見積書.pdf | 見積書 | |
| 3 | 案内文.docx | 案内文.docx |
【操作のポイント】判定する拡張子の文字数と、LEFT関数で引く文字数は必ず同じにします。
文字数が不足する場合のエラー対策
A2が空白、または削除数より短い文字列である場合、単純な式では想定外の表示になることがあります。
たとえば右から3文字を削除する処理に対し、A2が「AB」だけなら残す文字数が負の値になります。
このようなときは、IF関数で文字数を確認してからLEFT関数を実行します。
=IF(LEN(A2)>3,LEFT(A2,LEN(A2)-3),””) とすると、4文字以上のときだけ右端3文字を削除できます。
3文字以下の場合は空白を返す設計です。
例外データを先に想定しておくことが、大量データの整形では欠かせません。
空白ではなく元の文字列を残したいなら、最後の””をA2へ変更します。
短い文字列はそのまま残す式
=IF(LEN(A2)>3,LEFT(A2,LEN(A2)-3),A2)
【操作のポイント】削除数と同じ文字数のデータを残すか空白にするかは、利用目的に合わせて決めます。
置換機能と関数を使い分ける考え方
| 作業内容 | 向いている方法 |
|---|---|
| 全データの末尾1文字を削除 | LEFT関数とLEN関数 |
| 決まった文字列を一括で消去 | 検索と置換 |
| 条件によって削除対象を変える | IF関数との組み合わせ |
続いては、関数以外の方法も含めた使い分けを確認していきます。
検索と置換が適するケース
削除したい文字列がすべてのデータで完全に同じ場合は、検索と置換で一括処理できることがあります。
たとえば全セルの末尾に「_old」が付いており、その文字列を消したい場合です。
ただし、検索と置換は文字列の途中に同じ語句があっても対象にする可能性があります。
末尾だけを確実に削除する条件を作りたいときは、関数の方が安全です。
置換は即時に元データを書き換える操作なので、実行前にファイルを保存するか複製しておきましょう。
特に商品名や顧客名など、途中に同じ文字が含まれるデータでは慎重な確認が必要です。
【操作のポイント】検索と置換を使う場合は、最初に少数のセルで検索結果を確認してから一括置換します。
フラッシュフィルを使える場面
Excelのフラッシュフィルは、入力例から規則を推測して文字列を分割または整形する機能です。
隣の列に「ABC123X」から「ABC123」へ直した例を手入力し、次の行で同様の形を入力すると候補が表示される場合があります。
規則が単純で、数式を残す必要がない一度きりの作業では便利です。
ただし、データ内容が複雑だったり例外が混じったりすると、推測結果が期待と異なるかもしれません。
再現性と検証しやすさを重視するなら数式、短時間の整形ならフラッシュフィルという選び方ができます。
フラッシュフィルは結果を値として作成します。
元データが変更されても自動計算されない点が、関数との違いです。
【操作のポイント】フラッシュフィルの結果は数行だけで判断せず、先頭、中間、末尾のデータを確認します。
Power Queryを検討するデータ量
毎月同じ形式のCSVファイルを受け取り、末尾文字の削除を繰り返すならPower Queryも候補になります。
Power Queryでは列の変換手順を保存できるため、次回以降は更新操作で同じ整形を実行しやすくなります。
数百行程度の単発作業ならLEFT関数で十分ですが、定型業務や複数ファイルの統合では作業時間を減らせます。
一方で、初めて使う場合は設定内容を理解する時間も必要です。
まずは数式で処理の規則を確かめ、繰り返し発生することが分かった段階でPower Queryへ移行する流れが現実的でしょう。
【操作のポイント】毎回同じ加工を行うデータなら、手作業の回数と件数を基準に自動化方法を検討します。
右から1文字を削除するときの注意点
| 確認項目 | 注意する理由 |
|---|---|
| 元データの保存 | 加工ミスから戻せるため |
| 文字種の確認 | 全角空白や記号が混在するため |
| 短いデータの確認 | 文字数不足を防ぐため |
続いては、文字列を切り取る前後で確認したい注意点を解説していきます。
見た目が同じ文字への注意
半角スペースと全角スペース、半角ハイフンと全角ハイフンなどは、画面上では似て見えることがあります。
しかしExcelでは別の文字として扱われるため、LEN関数の文字数や条件判定の結果に影響します。
数式バーを見ても判断しにくい場合は、=LEN(A2)で文字数を表示して確認する方法があります。
コピー元のシステムやWebページによっては、改行コードに近い見えない文字が混じる場合もあります。
想定より結果が1文字ずれるときは、隠れた空白や文字種の違いを疑うと解決につながります。
【操作のポイント】異常なデータを1件見つけたら、同じ入力元のデータも確認して混在状況を調べます。
数字の先頭ゼロを守る方法
管理番号のように「00123X」の先頭ゼロを含む文字列では、セルの表示形式にも注意が必要です。
Excelが数値として認識すると、先頭のゼロが消えて「123X」のようになることがあります。
文字列として扱いたい列は、データを貼り付ける前に表示形式を文字列へ設定すると安心です。
すでに入力済みのデータであれば、先頭にアポストロフィを付けて文字列として入力する方法もあります。
LEFT関数の結果は文字列として扱われますが、元データの時点でゼロが失われていれば復元できません。
重要な管理番号は、加工前に表示内容と桁数を確認します。
先頭ゼロを含む値は数値ではなく文字列として管理する考え方が安全です。
【操作のポイント】コード類を扱う列は、取り込み前に文字列形式へ設定しておくと先頭ゼロの消失を防げます。
数式のエラーと空白セルの確認
大量のデータに数式をコピーした後は、B列にエラー表示がないかを確認します。
フィルターを利用して空白セルやエラー値を絞り込むと、例外データを見つけやすくなります。
元データが空白の場合に空白のままにしたいなら、=IF(A2=””,””,LEFT(A2,LEN(A2)-1)) のように条件を追加できます。
この式ではA2が空白なら空白を表示し、値があるときだけ末尾1文字を削除します。
空白データをどう扱うかも数式設計の一部です。
業務データでは、空白が入力漏れを意味する場合もあるため、単に消すのではなく別列で確認対象として残す判断も必要です。
【操作のポイント】数式を完成させたら、通常データだけでなく空白、短い文字列、例外データで結果を試します。
まとめ エクセルで右から1文字を削除する方法
| 目的 | 主な数式 |
|---|---|
| 右から1文字を削除 | =LEFT(A2,LEN(A2)-1) |
| 右から複数文字を削除 | =LEFT(A2,LEN(A2)-削除数) |
| 特定の末尾だけを削除 | IF関数とRIGHT関数を組み合わせる |
Excelで右から1文字を削除する基本の数式は、=LEFT(A2,LEN(A2)-1) です。
LEN関数で元の文字数を求め、そこから1を引いた文字数だけLEFT関数で取り出すため、文字数が異なるデータにも対応できます。
右から2文字以上を削除する場合は、引く数を変更します。
末尾が特定の文字列である場合だけ削除したいときは、IF関数とRIGHT関数を組み合わせると安全です。
空白の整理にはTRIM関数、繰り返しの定型処理にはPower Queryという選択肢もあります。
まず別列で数式を試し、結果を確認してから値として固定する流れを守れば、元データを安全に保ちながら文字列を整形できます。
末尾の不要な文字を正しく削除し、見やすく使いやすいExcelデータに仕上げましょう。