エクセル

【Excel】VBAで右からn文字を削除(何文字)する方法【最後、末尾を消す:右から1文字消す:マクロ】

当サイトでは記事内に広告を含みます

この記事では、エクセルのVBA(マクロ)にて右からn文字を削除する方法について解説していきます。つまり、末尾・最後の何文字を消すことと同じ意味です。

VBAはとにかくコードの書き方を知る・自分で書いてみるのが上達のカギのため、この機会に覚えておくといいです。

それではいきましょう!

目次

VBAマクロにて右から1字削除(文字列)する方法【関数作成】

マクロにて右から何文字削除する方法として「1文字消す」サンプルを見ていきましょう。

VBAでカスタム関数を以下のように作ってみます。


 

Alt+F11にて、VBA画面を開き任意のモジュールに上のコードを貼り付け、保存しましょう。

このコードによって、RemoveLastChar(対象セル)という構文で右から1文字削除する関数ができました。

続いて、以下のサンプルにてVBAで右から1文字削除する関数を適用します。

上で作った通りに、=RemoveLastChar(対象セル)と出力したいセルに入れましょう。

ENTERで処理確定し、オートフィルでコピーすればVBAにて右から何文字削除(ここでは1文字)する操作が完了ですね。

VBAにて右から1文字削除する方法(何文字消す)【その2】

関数化させるのではなく、VBAのみで処理したい人もいると思います。

以下のマクロコードでは、右から1文字を消した文字列を隣の列に出力させるコードです。


 

このコードをAlt + F11にてVBAの編集画面に貼付しましょう。

後は、上のサンプルにて該当セルを選択後に、Alt + F8にて該当マクロを選び、実行しましょう。

以下のように、右から1文字が隣の列に出力されました。

 

VBAにて右から何文字削除する方法(1文字消す)【その3:一括置換】

なお、隣のセルに出力させるのはなく、元の文字列に上書きしたい人もいることでしょう。

そんな場合は以下のコードを使用するといいです。

以下が実行結果です。

なお、このコードの場合では、元の文字列が消えるため、コードに誤りがある場合は取り返しがつかなくなるケースもあります。

なので、きちんとバックアップを取った上で、処理しましょう。

 

まとめ VBAで右から何文字を削除する方法【最後、末尾を消す:右から1文字消す:マクロ】

ここでは、VBAで右からn文字を削除(何文字)する方法【最後、末尾を消す:右から1文字消す:マクロ】について解説しました。

マクロはとにかく慣れが大切。

一緒にエクセルを使いこなせるようになり、もっと効率よく生きていきましょう(^^)/

ABOUT ME
white-circle7338
アラサーの男性です。自分が今まで経験・勉強してきた「エクセル」「ビジネス用語」「生き方」などの情報を、なるべくわかりやすく、楽しく、発信していきます。 一緒に人生を楽しんでいきましょう