エクセルのセル内で、指定文字数毎に改行する方法

動画編集効率化
この記事は約2分で読めます。


一度に表示する文字数を
「10文字×4列」
などとしたい時に便利です。

主にYMM4の読み上げ機能を用いる際に、表示する字幕の整理のため、使用しています。

手順

「開発」タブをクリック
「VisualBasic」をクリック
すると、コードを触る画面が出てくる。

「表示」をクリック
「コード」をクリック

⑤入力ウィンドウに、コードをコピペする。
※今回は10文字で改行としています。
 変更したい場合は、「改行文字列を指定します」と書かれた箇所の数値を変更して下さい。

⑥処理を行いたいセルを範囲選択する。
⑦コード入力画面の、再生ボタンをクリックする。

すると、指定文字数で改行を入れた状態に変換されます。

コード(コピペして使って下さい)

Sub 選択範囲のセルの文字列を指定文字数ごとに改行する()
Dim rng As Range
Dim strTemp As String
Dim numWord As Long

‘改行文字数を指定します。
numWord = 10

‘選択した範囲のデータを取得し、範囲件数分処理を繰り返します。
For Each rng In Selection

‘セル内に改行が含まれるかチェックします。ない場合に改行処理が行われます。
If Right(rng.Value, 1) <> Chr(10) Then

‘文字列を読み取り、指定文字数ごとに改行コードを挿入します。
For i = 1 To Len(rng.Value) Step numWord
strTemp = strTemp & Mid(rng.Value, i, numWord) & Chr(10)
Next

‘改行した結果をセルに代入します。
rng.Value = strTemp
‘処理した文字を空にします。
strTemp = “”
End If
Next rng
End Sub

注意点

この記事は、個人の忘却防止を兼ねています。
私もコードの内容を詳しく理解しているわけではないので、あくまで参考として下さい。

コメント

タイトルとURLをコピーしました