セルの改行は便利ですが、1行1セルにするといった無駄な社内ルールがあったりします。
その場合は、マクロで分割しましょう。
セルの値を改行で分割するサンプルコード
選択しているセルの場合と、Rangeを指定する場合とtmpに入れるデータを変更可能にしています。
'■改行でセルを分割する Sub call_cells_split_vblf() Dim tmp As Range ' Set tmp = ActiveCell '選択しているセルの場合 Set tmp = ActiveSheet.Range("A1") 'アクティブシート セルA1の場合 With tmp '■セルの値の中からVbLfがなくなるまで繰り返す Do Until InStr(tmp, vbLf) = 0 '対象セルの下のセルが空白でなければ、空白セルを挿入する If .Offset(1, 0).Value <> "" Then .Offset(1, 0).Insert shift:=xlDown End If '■改行までの値を貼り付ける .Offset(1, 0).Value = Mid(.Text, InStrRev(.Text, vbLf) + 1) .Value = Left(.Text, InStrRev(.Text, vbLf) - 1) Loop End With '■イメージ 'セルA1 あ →セルA1 あ ' い →セルA2 い ' う →セルA3 う ' え →セルA4 え ' お →セルA5 お 'セルA2 → 'セルA3 → 'セルA4 → 'セルA5 → End Sub
コメント