この記事ではエクセルで右から1文字を削除する方法について解説していきます。
ポイントは以下です。
・LEFT関数とLEN関数を組み合わせて右から1文字を削除する方法
・右から1文字を削除するマクロ
エクセル操作は1つ1つ追っていけば必ずうまくできるため、ぜひ本記事を参考にスキルアップにつなげてくださいませ♪
エクセルで右から1文字を削除する方法【LEFT関数とLEN関数】
それでは以下のサンプルを用いて関数を使った右から1文字削除の方法を確認していきます。
まずA列に元データを入力します。そしてB2セルに以下の数式を入力します。
=LEFT(A2,LEN(A2)-1)
LEFT関数は文字列の左端から指定した文字数分の文字列を取り出します。
LEN関数は文字列の文字数を返します。
この例ではLEN(A2)-1で元データの文字数から1を引いた文字数分、左端から文字列を取り出すことで、右から1文字を削除しています。
ENTERで処理を確定させます。
B2セルの右下にカーソルを合わせてドラッグorダブルクリックし、オートフィルでB列全体に数式をコピーします。
これでA列の元データから右1文字を削除した結果がB列に表示されます。
元データを変更すれば、B列の結果も自動的に更新されますね(^^)/
LEFT関数とLEN関数の組み合わせは、文字列の右端からn文字削除したい場合に応用できる便利なテクニックです。
LEFT関数とLEN関数で右から1文字を削除する方法【マクロ自動化】
関数を使った右から1文字削除をマクロで自動化する方法を見ていきます。
VisualBasicエディタを開き、以下のコードを入力します。
Sub DeleteLast1Character()
Dim lastRow As Long
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
Range("B2").Formula = "=LEFT(A2,LEN(A2)-1)"
Range("B2").AutoFill Destination:=Range("B2:B" & lastRow)
End Sub
このマクロは、A列の最終行を自動判定し、B2セルに右から1文字を削除する数式を入力後、オートフィルでB列全体に数式をコピーします。
マクロを実行すれば、右から1文字削除が一発で完了します。
削除する文字数を変更したい場合も、マクロのコードを一部修正するだけで済むため、作業効率が格段に上がります。
まとめ エクセルで下1桁を削除を削除(末尾・最後の1文字を消す:マクロ、n文字目)する方法
以上、エクセルで右から1文字を削除する方法と右から1文字目だけを削除する方法を関数とマクロで実現する方法を紹介しました。
関数とマクロを状況に応じて使い分けることが大切です。