この記事はVBAを使ったことない、初心者向けにVBAの使い方を画像を多めに解説します。
中身を知らなくてもコピペで使える様にしています。
※Microsoft® Excel for Mac バージョン16.93.1です。

VBAで複数セルで改行を一括で入れる

やりたいこと

業務中、複数のセルで文章を入力していて、途中で改行を入れたいことがありました。
数が少なければ手動で改行してもいいのですが、実際は100行以上あり、VBAで一括ですることに。
(文字列置換でもいけますが、せっかくなのでVBAで。)
VBA
句読点(。)のところで改行したい

変更イメージ

変更前
以下の選択したセルの句読点(。)の後に、VBA
変更後
改行を入れたい。VBA

手順(動画)

※音声やテロップはありません。下記の手順でわからない方はご覧ください。

手順

VBA
1
まずは、VBAを使う準備です。左上の「Excel」の「環境設定」をクリック。
VBA
2
「表示」をクリック。
VBA
3
画面下の「開発者タブ」をクリック。
VBA
4
「開発」タブが追加されました。これでVBAを使えるようになります。
「開発」タブをクリック。
VBA
5
一番左の「Visual Basic」をクリック
VBA
6
「Visual Basic Editor」が表示されました。
「プロジェクト-VBAProject」の何もない白い部分を右クリック。
「挿入」-「標準モジュール」をクリック。
VBA
7
「標準モジュール」が追加されました。
VBA
8
ここに以下の内容をコピペします。(クリックでコピーできます)
1Sub ReplacePeriodWithNewLine()
2    Dim cell As Range
3    Dim newText As String
4    
5    ' 選択範囲の各セルを処理
6    For Each cell In Selection
7        If Not IsEmpty(cell.Value) Then
8            ' 「。」の後に改行(vbLf)を追加
9            newText = Replace(cell.Value, "。", "。" & vbLf)
10            cell.Value = newText
11        End If
12    Next cell
13    
14    MsgBox "処理が完了しました!", vbInformation
15End Sub
説明を表示する
VBA
9
改行をしたいセルを選択します。
VBA
10
先ほどのVisual Basic Editorに戻り、貼り付けたテキストの中のどこでもいいので、 クリック。
(ここでは真ん中らへんをクリック)
VBA
11
画面上部の実行マーク()をクリック。
VBA
12
完了しました。
VBA
13
句読点の後に改行が入りました。
VBA
14
このEXCELを保存するときに、ファイル名.xlsxだと、左のメッセージが表示されます。
「はい」をクリックすると、先ほど作成したVBAは破棄され保存されます。特にVBAが必要なければこちらで。
もし、VBAを保存したい場合は、「いいえ」をクリックして、ファイル名.xlsmとして保存してください。VBA
戻る
画像
書いた人:ふう
mimu エンジニア
「世界で使われるアプリ」を目指してNext.jsやTailwindCSSで開発中。
VBAは新人時代に請求や工数の集計業務を任され、早く開発案件に入りたくて、
自力で勉強して自動化したのがきっかけです。
React|Next.js|TailwindCSS|Java|VBA|PHP
猫好きで朝活派です。読書、ジグソーパズル、お寿司(マグロ、サーモン)が好きです。
ご利用にあたっての注意事項
動作環境について
本サンプルコードは、特定のExcelバージョンで動作確認を行っています。他の環境では動作を保証できません。
バックアップを推奨
実行前に必ずデータのバックアップを行ってください。予期しない不具合やデータ損失が発生する可能性があります。
セキュリティについて
マクロの実行にはセキュリティリスクが伴います。信頼できる環境でのみ使用し、不審なコードの混在に注意してください。
改変・再利用について
本コードの改変・再利用は自由ですが、自己責任でお願いします。改変後の動作保証はできません。
免責事項
本コードの利用によるいかなる損害や不具合についても、一切の責任を負いかねます。