Home » エクセルマクロ・Excel VBAの使い方 » 配列 » VBAのSplit関数を使ってセル内改行を含む文字列を分割する

VBAのSplit関数を使ってセル内改行を含む文字列を分割する

動作検証バージョン:Windows 11 Home + 64bit Excel(バージョン2304 ビルド16327.20134)

「vba split セル内改行」
「改行文字 VBA エクセル Split セル」
といった検索で時折アクセスがあります。

Excelのセル内で改行されている文字列を、VBAのSplit関数を使って分割するには

どのようなコードを書けばいいのかを調べていらしたのでしょう。

[スポンサードリンク]

Split関数を使ってセル内改行を含む文字列を分割するサンプルマクロ

アクティブシートのA1セルに、セル内改行を含む文字列を入力して、以下のExcelマクロを実行してみてください。

Sub Split関数を使ってセル内改行された文字列を分割する()
 Dim txt As String
 txt = Range("A1").Value
 
 MsgBox Split(txt, vbLf)(0)
 MsgBox Split(txt, vbLf)(1)
End Sub

以下のコードで、

MsgBox Split(txt, vbLf)(0)

1つ目のセル内改行の前の文字列がメッセージボックスに表示され、

MsgBox Split(txt, vbLf)(1)

で、1つ目のセル内改行の後ろから2つ目のセル内改行の前までの文字列がメッセージボックスに表示されます。

Split関数の第2引数に定数vbfLfを指定すれば、セル内改行を区切り文字として文字列を分割できます。

vbLfではなくChr(10)でも可能だが…

サンプルマクロの以下の部分は、

MsgBox Split(txt, vbLf)(0)
MsgBox Split(txt, vbLf)(1)

VBAのChr関数を使った

以下のようなコードでも同じ結果になります。

MsgBox Split(txt, Chr(10))(0)
MsgBox Split(txt, Chr(10))(1)

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » 配列 » VBAのSplit関数を使ってセル内改行を含む文字列を分割する

「配列」の記事一覧

検索


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

.