Excelのセルの末尾の余分な改行をまとめて削除するVBAのサンプルコード

VBA
記事内に広告が含まれています。

Excelのセルの末尾の余分な改行をまとめて削除するVBAのサンプルコードを紹介します。

仕様

下記のシートのA列のように文末に余分に改行があるとします。※B列に補足を入れています

これを以下のシートのように、余分な改行を削除するVBAを考えました。
文章の途中の改行は残しつつ、文末の改行だけを消すのです。

ソースコード

ソースコードは以下のとおりです。

Option Explicit

Sub deleteLineBreak()
    Dim i As Long
    For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
    
        Dim CellValue As String
        CellValue = Worksheets("Sheet1").Cells(i, 1).value
        
        '文字数回繰り返す
        Dim j As Long
        For j = 1 To Len(CellValue)
            
            '最後の文字が改行コードの場合
            If Right(CellValue, 1) = vbLf Or Right(CellValue, 1) = vbCr Then
            
                '最後の文字以外を格納
                CellValue = Left(CellValue, Len(CellValue) - 1)
                
            '最後の文字が改行コード以外の場合
            Else
                '繰り返しから抜ける
                Exit For
            End If
        
        Next
    
        Worksheets("Sheet1").Cells(i, 1).value = CellValue
    
    Next
    
End Sub

ソースコードは以下の通り、ThisWorkbookに貼り付けました。

実行

実行手順

Alt + F8でマクロの一覧から先ほどのマクロの関数を実行します。

実行結果

マクロの実行ボタンを押下すると、A列のセルの末尾の改行が削除されています。

参考情報

環境

下記の環境で作成・実行しております。

No.環境バージョン
1OSWindows11
2ExcelExcel2016
環境一覧

以上です。