フッターコンテンツにスキップ
EXCEL ツール

Excelで行を追加する方法: 簡単に (2026)

Excelで複数行を挿入する方法: 実際に機能する6つの方法

挿入を何度もクリックせずにスプレッドシートに複数の行を追加する必要がありますか? Excelで複数行を挿入する方法への最速の回答は、追加したい行と同数の既存の行を選択し、WindowsではCtrl + Shift + プラス(+)、MacではCmd + Shift + プラス(+)を押すことです。 Excelは選択した範囲の上にその数の空白行を即座に挿入します。

例えば、予算スプレッドシートに新たに5つの行項目を行10の上に挿入する必要がある場合、左の行10マークをクリックし、カーソルを行14までドラッグ(これにより複数行、合計5行を選択)、その後Ctrl + Shift + +を押します。 5つの新しい行が行10の上に表示され、既存のすべての行が下にシフトします。 キーボードショートカットを筋肉記憶にしたら、その挿入全体は約3秒で完了します。

このコマンドはMicrosoft Excelの実際のケースの約80%を処理しますが、フィルターされたデータ、大きな挿入ポイント間のギャップ、または隣接していない行で作業する際に知っておくべき他のいくつかの方法がアプリケーションに用意されています。 以下のセクションでは、反復作業のためのVBAマクロアプローチと、コードを通じてスプレッドシートのワークフローを自動化する開発者向けのオプションを含む、信頼できるすべての機能を詳しく説明します。 関連するExcelスキルとしては、行の固定や、列のデータのアルファベット順、行のロックがあり、シート内のデータセットを再構築する際に行の挿入と自然にペアになります。

Excelで複数行を挿入する方法: 実際に機能する6つの方法: 画像1 - 行10から14が強調表示され、Ctrl + Shift + +ショートカットオーバーレイが表示されているExcelワークシート

方法1: キーボードショートカット (最速)

これは、ほとんどのExcelパワーユーザーがデフォルトで選択する方法であり、キーボードから離れることなく機能します。 シフトキーは、ほぼすべての迅速な挿入技術で主役を務めます。

Windows: 新しい行を表示したい行を選択し、Ctrl + Shift + +(メインキーボードのプラス記号)を押します。

Mac: 行を選択し、Cmd + Shift + + または Control + I(インストールされているExcelのバージョンによる)を押します。

挿入される行の数は、選択される行の数に一致します。 3行を選択すれば、3つの新しい空白行が得られます。 15行を選択すれば、15が得られます。 新しい行は常に選択の上に表示され、既存のデータと値を下に押します。 シフトされた範囲内のセルを参照する任意の数式は、その行番号を自動的に更新します。

Excelが行を直接挿入する代わりに挿入ダイアログボックスを開く場合、通常は個々のセルが選択されていたことを示します。 ショートカットキーを押す前に、シート全体の行を強調表示するために左端の行番号をクリックします。

Excelで複数行を挿入する方法: 実際に機能する6つの方法: 画像2 - シート左側の行ヘッダーとキーボードショートカットを示す画像

方法2: 右クリックコンテキストメニュー

右クリックアプローチは最も発見しやすい方法であり、WindowsとMacで同じように機能します。

  1. 新しい空白行を表示したい行を選択します(5つの既存の行を選択して5つの新しい行を挿入)。
  2. 強調表示された行番号のいずれかを右クリックします。
  3. メニューから挿入を選択します。

Excelは選択した範囲の上に一致する数の行を挿入します。 行全体が選択されているときには挿入ダイアログボックスは表示されず、このアクションは右クリック後、実質的に一度クリックするだけで完了します。

この方法は、マウスを多用するワークフローで作業するときや、キーボードコマンドに不安を感じる同僚にExcelを教えるときに理にかなっています。 これはまた、シート全体の行ではなく、セルや列のみを誤って選択するのを防ぐ最も信頼できる方法でもあります。

Excelで複数行を挿入する方法: 実際に機能する6つの方法: 画像3 - 選択された行に開かれた右クリックコンテキストメニューと挿入オプション

方法3: ホームリボンと挿入メニュー

視覚的なナビゲーションを好む人のために、リボンには明確にラベル付けされた挿入機能があります。

  1. 新しい行を表示したい行を選択します。
  2. リボンのホームタブに移動します。

  3. セルグループで、挿入の下にあるドロップダウン矢印をクリックします。

  4. メニューからシート行を挿入を選択します。

この方法はショートカットや右クリックよりも遅いですが、便利な安全策を提供します:ドロップダウンには、シート列の挿入、セルの挿入、シートの挿入も含まれており、誤った要素タイプの挿入を防ぎ、誤りが発生する前に修正するのに役立ちます。

方法4: 隣接していない複数の行の挿入

例えば、行5、12、20の上に一度に複数の空白行を必要とする場合はどうしますか? Excelはこれを単一の挿入操作で処理します。

  1. 行5のヘッダーをクリックします。
  2. Ctrl(Windows)またはCmd(Mac)を押しながら行12のヘッダーをクリックします。

  3. 修飾キーを押し続けたまま、行20をクリックします。
  4. 選択した任意の行を右クリックして挿入を選択するか、Ctrl + Shift + +を押します。

Excelは選択した各行の上に1行を挿入し、データを順次下にシフトします。 これは、複数のセクション区切りを含む大型スプレッドシートを再構成する際に大幅な時間を節約します。

追加される行の数についての小さくとも重要なコメントは:新しい行の数は、選択した行の数に等しく、間隔ではありません。 行5の上に2つの空白行、行12の上に3つの空白行を挿入するには、挿入する前に行5から始まる連続した2行と、行12から始まる連続した3行を選択します。

方法5: 大きな範囲用の名前ボックストリック

何千行もスクロールするシートで100行を挿入するのは一般的な痛点です。 カーソルをドラッグして多数の行を選択するのは面倒になります。 名前ボックスは、範囲を定義するためにコロンを使用してそれをエレガントに解決します。

  1. 名前ボックスをクリックします(通常、アクティブなセル参照を表示する、数式バーの左側にある小さなフィールド、例: A1)。

  2. 行範囲をコロンを使用して入力します。例えば、5:104 と入力して行5から始まる100行を選択します。
  3. Enter キーを押します。 Excelはすべての100行を強調表示します。
  4. Ctrl + Shift + +を押すか、右クリックして挿入を選択します。

それは約5秒で挿入された100の空白行です。 このトリックは、何千行にまたがる任意のサイズの範囲に対しても機能します。

方法6: コピー&ペースト挿入(パターン挿入用)

ときには、複数の同一の行を挿入するのが目標であり、たとえば、レポート全体で繰り返されるヘッダーセクション。 Excelのコピーされたセル機能はこれをうまく処理します。

  1. コピーする1行(または行)を選択し、Ctrl + Cを押します。
  2. コピーを配置する行をハイライトします。
  3. 右クリックして、メニューからコピーしたセルを挿入を選択します。

  4. プロンプトでセルを下にシフトを選択し、Enterを押します。

Excelはコピーしたセルを新しい行として挿入し、既存のデータを上書きしません。 これは、値、数式、または書式設定を既に含む複数の行を、周囲のシートを乱すことなく追加する最もクリーンな方法です。

ボーナス方法: 繰り返し挿入用のVBAマクロ

リスト内のすべての既存の行の間に空白行を挿入するようなスケジュールされたタスクに対して、少しのVBAマクロが1クリックでその仕事を処理します。

VBAエディタを開くにはAlt + F11を押し、新しいモジュールを挿入して、以下のコードを貼り付けます:

Sub InsertRowBetweenEachRow()
    Dim i As Long
    Dim LastRow As Long
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row
    For i = LastRow To 2 Step -1
        Rows(i).Insert Shift:=xlDown
    Next i
End Sub
Sub InsertRowBetweenEachRow()
    Dim i As Long
    Dim LastRow As Long
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row
    For i = LastRow To 2 Step -1
        Rows(i).Insert Shift:=xlDown
    Next i
End Sub
Option Strict On



Sub InsertRowBetweenEachRow()
    Dim i As Long
    Dim LastRow As Long
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row
    For i = LastRow To 2 Step -1
        Rows(i).Insert(Shift:=xlDown)
    Next i
End Sub
$vbLabelText   $csharpLabel

VBAエディタを閉じた後、開発者タブまたはAlt + F8を使用してマクロを実行します。このスクリプトは、テーブル内の行2から下に向かってすべての既存の行の上に空白行を挿入します。

このアプローチは一度限りの作業には過剰ですが、月次レポートや繰り返しのデータ準備タスクには役立ちます。 マクロはまた、セル値に基づいて、空白セル、ヘルパー列、または他の条件に基づいて行を挿入するように変更することもできます。

よくある問題とトラブルシューティング

Excelがエラーを表示します: "操作は、セルがシート外にシフトされるため実行できません。"このエラーは通常、スプレッドシートに最下部(行1,048,576付近)にデータがある場合に発生します。 Excelは、新しい行を挿入できません。既存のコンテンツを移動する空きスペースがないからです。 Ctrl + Endを使ってシートの下までスクロールし、余分なデータや書式を削除して、ファイルを保存し、再試行してください。

挿入された行が間違った場所から書式を引き継ぎます。 Excelは新しく挿入した行の隣に小さな挿入オプションアイコンを提供します。 それをクリックして、上と同じ書式、下と同じ書式、または書式をクリアのいずれかを選択してください。 このオプションは、スタイル設定されたテーブルに行を挿入するときに特に便利です。

フィルターされたリストに行が挿入されますが、予期しない位置に現れます。フィルターされたビューは行を隠すことができ、挿入は可視行のみに適用されます。 行を挿入する前にフィルターをクリアし、新しい行が特定の位置に配置されるようにしてください。 その後、フィルターを再適用してください。

Ctrl + Shift + + ショートカットが挿入ダイアログボックスを開き、行を挿入しません。 これは、選択が行全体ではなくセルだけを含むことを意味します。 キーボードショートカットを使用する前に、常に左の行番号をクリックして行全体を選択します。

凍結ペインが行選択を妨げます。 シートの一部が凍結されている場合、スクロールと行選択は凍結ラインの上と下で異なった動作をします。表示→凍結ペイン→解除を経由してペインを解除し、挿入を行い、必要に応じて再凍結してください。

挿入された行が絶対範囲を参照する数式を壊します。 例えば、=SUM($A$2:$A$10) のような数式は、新しい行が範囲内に到着しても拡張しません。 データセットが時間とともに成長する場合、=SUM(A:A)のような構造化参照または全列合計を使用してください。

単一行の挿入は機能しますが、複数の挿入は何もしません。 これは通常、シートが保護されていることを示します。 レビュータブを確認し、行を追加する前にシートの保護を解除してください。

開発者向け: IronXLを使用したプログラム的行挿入

.NETアプリケーションからスプレッドシートワークフローを自動化する人は、GUIを完全にスキップできます。 Iron Softwareのチームは、IronXLをExcelでXLSXファイルの読み書きをMicrosoft ExcelやOfficeをサーバーにインストールせずに行うC# Excelライブラリとして構築しました。 パイプラインのどこにもOfficeをインストールする必要はありません。

IronXLが複数行挿入操作をどのようにプログラム的に処理するかをご紹介します:

using IronXL;
WorkBook workBook = WorkBook.Load("budget.xlsx");
WorkSheet sheet = workBook.WorkSheets.First();
// Insert 5 blank rows starting at row index 9 (which is row 10 in Excel)
sheet.InsertRows(9, 5);
workBook.SaveAs("budget_updated.xlsx");
using IronXL;
WorkBook workBook = WorkBook.Load("budget.xlsx");
WorkSheet sheet = workBook.WorkSheets.First();
// Insert 5 blank rows starting at row index 9 (which is row 10 in Excel)
sheet.InsertRows(9, 5);
workBook.SaveAs("budget_updated.xlsx");
Imports IronXL

Dim workBook As WorkBook = WorkBook.Load("budget.xlsx")
Dim sheet As WorkSheet = workBook.WorkSheets.First()
' Insert 5 blank rows starting at row index 9 (which is row 10 in Excel)
sheet.InsertRows(9, 5)
workBook.SaveAs("budget_updated.xlsx")
$vbLabelText   $csharpLabel

それが全操作です。 COMインタップはありません、バックグラウンドで実行されるExcelプロセスもありません、実行サーバーでのライセンスの問題もありません。 IronXLは行挿入、数式の更新、書式の保存、手動のExcel自動化を困難にするすべてのケースを扱います。

この投稿が、Excelに行を追加するためのすべての方法を明らかにする助けになれば幸いです。 レポートツールの構築、データインポートパイプライン、またはExcelファイルをプログラム的に再構築する必要のある任意のワークフローのために、IronXLは試す価値があります。 IronXL ウェブサイトのリンクから無料で試してみてください。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

アイアンサポートチーム

私たちは週5日、24時間オンラインで対応しています。
チャット
メール
電話してね