メインコンテンツへスキップ

Kutools for Office — 1つのスイート、5つのツールで、もっと多くのことを成し遂げましょう。

Excelでセル内の行数(改行)をカウントするにはどうすればよいですか?

Author Siluvia Last modified

Excelでデータを扱う際、改行によって複数行のテキストが含まれているセルに出くわすことはよくあります。例えば、インポートされた住所、製品リスト、アンケート回答などが、Alt+Enterやデータソースの書式設定により、1つのセル内で複数行に表示されることがあります。セル内に行がいくつあるかを知ることは、データ分析、クリーンアップ、またはレポート作成において非常に重要です。この記事では、Excelでセル内の行数(改行)をカウントするための実用的な方法を説明し、そのようなデータをより効率的に管理し、ワークフローを合理化するのに役立てます。

Excelで複数行のセル内容を簡単に行または列に分割


数式を使用してセル内の行数をカウント

Excelにはセル内の改行を直接カウントするコマンドはありませんが、組み込み関数を使用してこれを簡単に実現できます。次の数式は、セル内の行数(改行の数+1)をカウントするのに役立ちます。これは、特にアンケート回答、複数項目のコメントフィールド、または単一セルに保持されている住所を分析する必要がある場合に便利です。

1. カウントを表示したい空白のセルを選択し、以下の数式を入力してEnterキーを押します。分析対象のセル参照を適切に調整してください(例: A2を使用)。

=LEN(A2)-LEN(SUBSTITUTE(A2,CHAR(10),""))+1

A screenshot showing a formula to count the number of lines in a cell in Excel

説明: この数式は、セル内の改行(CHAR(10)で表される)の数を計算し、それに1を加えて合計行数を取得します。

注意: この数式では、A2は行数をカウントする対象のセルです。データが別のセルにある場合は、参照を適宜調整してください。

2. 数式を入力した後、結果が表示されたセルを選択したままにしておきます。同じ列の他のセルにも数式を適用するには、フィルハンドルを下にドラッグして追加のセルの行数を自動的にカウントします。スクリーンショットに示すように操作してください。

A screenshot showing the results of counting line breaks in cells using a formula in Excel

実用的なヒントと注意点:

1. 空白に見えるセル(空のセル)の場合でも、結果は1になります。完全に空のセルやコンテンツがないセルで数式が0を返すようにするには、以下の変更版をご覧ください。
2. 空白セルで数式に0を返させたい場合は、次の代替案を使用してください:
=LEN(A2)-LEN(SUBSTITUTE(A2,CHAR(10),""))+(LEN(A2)>1)
このアプローチは、データセットに空のセルが含まれており、真に空のセルと1行のみのエントリを区別したい場合に特に適しています。
3. これらの数式は実際の改行(Alt+Enterによる改行)をカウントします。「ワードラップ」機能が使用されていても明示的な改行がない場合、結果は1になります。正確な結果を得るためには、入力データが改行(Alt+Enter)で区切られていることを確認してください。

数式は、素早く非破壊的に改行をカウントするソリューションを提供し、ほとんどの通常のデータ分析シナリオでうまく機能します。ただし、大規模な範囲を同時に処理したり、複数の選択範囲に対して結果を得る必要があるなどの高度なニーズに対しては、数式のアプローチは他の方法と比較して効率が低い場合があります。


Excelで速度計グラフを迅速に作成:

Kutools for Excelの「セルの分割」ユーティリティは、スペース、カンマ、新規行、またはその他の区切り文字でセル内容を分割し、分離された行または列に配置することができます。このツールを使用することで、改行を特定した後、多次元のテキストデータをさらに変換および分析し、ワークフローを大幅に合理化できます。

A screenshot showing Kutools for Excel's Split Cells utility for splitting content into rows or columns

Kutools for Excel - 必要なツールを300以上搭載し、Excelの機能を大幅に強化します。永久に無料で利用できるAI機能もお楽しみください!今すぐ入手


選択したセル内の改行をカウントし、行数を表示するVBAマクロ

大規模なデータセットを扱う場合や、一度に複数のセルの行数(改行の数)をカウントする必要がある場合、手動の数式よりもVBAマクロを使用することでより効率的かつ柔軟に対応できます。次のソリューションは、回答の要約、データのエクスポート準備、インポートされたテキストの品質チェックなど、バッチ処理タスクに最適です。

以下は、VBAマクロを使用して選択した各セル内の行数を迅速にカウントする方法です。これにより、ワークシートデータを変更することなく、メッセージボックスに結果が表示され、一目でカウントを確認できます。

1.開発」タブ > 「Visual Basic」をクリックして、「Microsoft Visual Basic for Applications」ウィンドウを開きます。VBAエディターで「挿入」>「モジュール」をクリックし、以下のコードを新しく作成されたモジュールに貼り付けます。

Sub CountLinesInSelection()
    Dim rng As Range
    Dim cell As Range
    Dim lineCount As Long
    Dim result As String
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set rng = Application.Selection
    Set rng = Application.InputBox("Select the range to count line breaks in:", xTitleId, rng.Address, Type:=8)
    
    If rng Is Nothing Then Exit Sub
    
    result = ""
    
    For Each cell In rng
        If Not IsEmpty(cell.Value) Then
            lineCount = Len(cell.Value) - Len(Replace(cell.Value, Chr(10), "")) + 1
        Else
            lineCount = 0
        End If
        
        result = result & "Cell " & cell.Address(False, False) & ": " & lineCount & " line(s)" & vbCrLf
    Next cell
    
    MsgBox result, vbInformation, "Line Break Counts"
End Sub

2. コードを入力したら、「 Run button 実行 」ボタンをクリックしてマクロを実行します。分析したいセル範囲を選択するダイアログボックスがポップアップ表示されます。これは連続した範囲でも、非連続の範囲でも構いません。
3. マクロは、選択した各セル内の改行(ラインフィード)の数をカウントし、それぞれのセルとその行数をリスト化したサマリーボックスを表示します。セルが空白の場合、返される行数は0になります。

ヒントとトラブルシューティング:

  • このマクロは既存のワークシートデータを変更しないため、データを変更したり追加の列を追加せずに素早く概要または診断チェックが必要な場合に適しています。
  • マクロを実行する際にアクセス許可エラーが発生した場合は、ワークブックがマクロ有効ファイル(*.xlsm)として保存されていること、およびExcelのセキュリティ設定でマクロが有効になっていることを確認してください。
  • この方法を非常に大きな選択範囲に適用する場合、メッセージボックスが長くなる可能性があります。読みやすくするために、セル範囲を制限することを検討してください。

 

VBAを使用することは、バッチ分析、レポート作成、またはさまざまなワークシート領域全体での一度限りの概要取得に特に有利です。これはパワーユーザーにとって柔軟ですが、セルの値が変更されたときに数式のように自動更新はされないため、編集後は必要に応じて再実行してください。


関連記事:

最高のオフィス業務効率化ツール

🤖 Kutools AI Aide:データ分析を革新します。主な機能:Intelligent Executionコード生成カスタム数式の作成データの分析とグラフの生成Kutools Functionsの呼び出し……
人気の機能重複の検索・ハイライト・重複をマーキング空白行を削除データを失わずに列またはセルを統合丸める……
スーパーLOOKUP複数条件でのVLookup複数値でのVLookup複数シートの検索ファジーマッチ……
高度なドロップダウンリストドロップダウンリストを素早く作成連動ドロップダウンリスト複数選択ドロップダウンリスト……
列マネージャー指定した数の列を追加列の移動非表示列の表示/非表示の切替範囲&列の比較……
注目の機能グリッドフォーカスデザインビュー強化された数式バーワークブック&ワークシートの管理オートテキスト ライブラリ日付ピッカーデータの統合セルの暗号化/復号化リストで電子メールを送信スーパーフィルター特殊フィルタ(太字/斜体/取り消し線などをフィルター)……
トップ15ツールセット12 種類テキストツールテキストの追加特定の文字を削除など)50種類以上のグラフガントチャートなど)40種類以上の便利な数式誕生日に基づいて年齢を計算するなど)19 種類の挿入ツールQRコードの挿入パスから画像の挿入など)12 種類の変換ツール単語に変換する通貨変換など)7種の統合&分割ツール高度な行のマージセルの分割など)… その他多数
Kutoolsはお好みの言語で利用可能 ― 英語、スペイン語、ドイツ語、フランス語、中国語、その他40以上の言語に対応!

Kutools for ExcelでExcelスキルを強化し、これまでにない効率を体感しましょう。 Kutools for Excelは300以上の高度な機能で生産性向上と保存時間を実現します。最も必要な機能はこちらをクリック...


Office TabでOfficeにタブインターフェースを追加し、作業をもっと簡単に

  • Word、Excel、PowerPointでタブによる編集・閲覧を実現
  • 新しいウィンドウを開かず、同じウィンドウの新しいタブで複数のドキュメントを開いたり作成できます。
  • 生産性が50%向上し、毎日のマウスクリック数を何百回も削減!

全てのKutoolsアドインを一つのインストーラーで

Kutools for Officeスイートは、Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proをまとめて提供。Officeアプリを横断して働くチームに最適です。

Excel Word Outlook Tabs PowerPoint
  • オールインワンスイート — Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proが含まれます
  • 1つのインストーラー・1つのライセンス —— 数分でセットアップ完了(MSI対応)
  • 一括管理でより効率的 —— Officeアプリ間で快適な生産性を発揮
  • 30日間フル機能お試し —— 登録やクレジットカード不要
  • コストパフォーマンス最適 —— 個別購入よりお得