概要
ドキュメント用途のExcelファイルでは、1セル内に長文を入力することがよくある。
それが表の形式になっていると、文字の洪水のように見えてしまい視認性が悪い。
また、行の幅をキュッてやる時に行間をダブルクリックするが、
やはりキュッとなりすぎてしまう。
これでキュッとしても行間が維持されて見やすくなる。
サンプルがあまり良くないが、内容が詰まっているほど効果が見える。
中には末尾改行を好まない人もいてすべて取り除きたかったり、
今すぐ全体に末尾改行入れてキュッてしたい!という場面があるので、
一連のアクションをマクロ化しておけば便利かと思う。
マクロ
選択範囲に末尾改行を付与する
末尾改行の増殖を防ぐため、
セルの末尾がすでに改行かを判定して行う。
Sub AppendLineBreakAtEnd()
Dim trg As Range
For Each trg In Selection
If Len(trg.Value) > 0 Then
If Right(trg.Value, 1) <> vbLf Then
trg.Value = trg.Value & vbLf
End If
End If
Next
End Sub
選択範囲に末尾改行を除去する
末尾改行が2つ以上入っている場合があるので、
すべて無くなるまでループさせている。
Sub RemoveLineBreakAtEnd()
Dim trg As Range
For Each trg In Selection
If Len(trg.Value) > 0 Then
Do While Right(trg.Value, 1) = vbLf
trg.Value = Left(trg.Value, Len(trg.Value) - 1)
Loop
End If
Next
End Sub