Home » Excel VBA Rangeオブジェクト » 末尾・最後の1文字を削除するExcelマクロ

末尾・最後の1文字を削除するExcelマクロ

動作検証バージョン:64bit Windows 10 Pro + 32bit Excelバージョン2102 ビルド13801.20360 Microsoft Store)

「excel vba 最後の文字を削除」
といった検索キーワードで、時折アクセスがあります。

Excel VBAでセル内データから最後の1文字を削除するには、どのようなコードを書けばいいのかを探していた方による検索でしょう。

検索キーワード
「vba 末尾 文字削除」
「vba 一番右の文字を削除」
も、同じでしょうか。

[スポンサードリンク]

末尾の1文字を削除するサンプルマクロ

末尾・最後・一番右の1文字を削除したいセルを選択しておいてから、以下のSubプロシージャを実行してみてください。

Sub 末尾の1文字を削除する()
 Dim org As String, rng As Range
 For Each rng In ActiveWindow.RangeSelection
  org = rng.Value
  If org <> "" Then
   rng.Value = Left(org, Len(org) - 1)
  End If
 Next
End Sub

サンプルマクロで行っている処理について

For Each~Nextループで選択されているセルを順番に処理を開始します。選択セルを取得するのに、ここではWindowオブジェクトのRangeSelectionプロパティを使っています。

For Each rng In ActiveWindow.RangeSelection

元のセルの値を、String型変数orgに代入し、

 org = rng.Value

空白文字列でなかったときに、

 If Len(org) <> "" Then

VBAのLeft関数を使って、末尾の1文字を削除したデータを、RangeオブジェクトのValueプロパティに設定しています。

  rng.Value = Left(org, Len(org) - 1)

[スポンサードリンク]

Home » Excel VBA Rangeオブジェクト » 末尾・最後の1文字を削除するExcelマクロ

「Excel VBA Rangeオブジェクト」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.