セルに文字を入力したら自動で行が追加される方法【Excel VBA】

目次

はじめに

Excelで重複データを処理していると、「下の方の値を優先して取得したい」と思う場面があります。
私も以前、MATCH関数INDEX関数を使って値を取得していましたが、どちらも上にある値が優先されてしまうため、意図したデータを取得できませんでした。

調べていくと、下の値を優先する方法は関数だけでは難しいようでした。
そこで発想を転換し、「それなら、上に新しい行をどんどん追加してしまえばよいのでは?」という考えに至り、VBAで対応してみました。


実現したいこと

  • セルA2に文字を入力したら、自動的に2行目に空行(新しい行)を挿入する
  • 常に最新の入力が上に来るようにする

使用するVBAコード

以下が、実際に使用したVBAコードです。Sheet1に直接記述します。

Private Sub Worksheet_Change(ByVal Target As Excel.Range)

    If Range("A2") = "" Then
        Exit Sub
    Else
        Rows(2).Insert
    End If

End Sub

手順と設定方法

1. Visual Basicエディタを開く

Excel上部メニューから「開発」タブ →「Visual Basic」を選択します。

2. 対象のシートを選択

左側の「Microsoft Excel Objects」の中から「Sheet1(または対象のシート)」をダブルクリックします。

3. 上記のVBAコードをそのまま貼り付けます

入力後、保存すれば設定は完了です。


コードの詳細解説

  • Private Sub Worksheet_Change(ByVal Target As Excel.Range)
     → この行は「セルが変更されたときに実行されるイベントハンドラー」です。定型文としてそのまま使います。
  • If Range("A2") = "" Then
     → セルA2が空白なら何もしないで終了します。
  • Rows(2).Insert
     → 上から2行目に新しい空行を挿入します。既存のデータがすべて1行下にずれます。

実行結果

このコードを有効にしておくと、セルA2に文字を入力した瞬間に新しい行が2行目に追加されます。
以後、次に入力されたデータも再び2行目に行が挿入されるため、新しいデータが常に上に積み重なるような構成になります。


応用のヒント

  • A2だけでなく他のセルをトリガーにしたい場合は、Range("A2")の部分を変更してください。
  • 条件を追加すれば、特定の値が入力されたときのみ行追加することも可能です。
  • データログのように「最新の情報を常に一番上に表示したい」場合にも応用できます。

まとめ

Excelでは関数だけでは限界がある処理も、VBAを使えば柔軟に対応可能です。
今回のように「セルに入力があったら自動で行を追加する」といった処理も、数行のコードで簡単に実装できます。

手作業での挿入を自動化したい方、データを常に最新順に並べたい方には非常に便利な手法です。
ぜひ試してみてください。

副業から独立まで「稼げる」Webスキルを習得する(PR)

ここまで読んでいただきありがとうございます。 最後に宣伝をさせてください。

「副業を始めたいが、何から手をつければいいかわからない」「独学でスキルはついたが、収益化できていない」という悩みを持つ方には、マンツーマン指導のWebスクール**「メイカラ」**が適しています。

このスクールは、単に技術を教えるだけでなく、**「副業として具体的にどう稼ぐか」**という実務直結のノウハウ提供に特化している点が特徴です。

講師陣は、実際に「副業Webライターから1年で独立して月収100万円」を達成したプロや、現役で利益を出し続けているブロガーなど、確かな実績を持つプレイヤーのみで構成されています。そのため、机上の空論ではない、現場で通用する戦術を学ぶことができます。

副業に特化した強み

  • 最短ルートの提示: 未経験からでも実績を出せるよう、マンツーマンで指導。
  • AI活用の習得: 副業の時間対効果を最大化するための、正しいAI活用スキルも網羅。
  • 案件獲得のチャンス: 運営がWebマーケティング会社であるため、実力次第で社内案件の紹介など、仕事に直結する可能性があります。

受講者の多くは、「在宅でできる仕事を探している」「副業を頑張りたい」という20代・30代・40代が中心です。

受講前には、講師による無料説明が行われます。無理な勧誘はなく、自分に合った副業スタイルやプランを相談できるため、まずは話を聞いてみることから始めてみてはいかがでしょうか。

ブログで稼ぎたいなら「メイカラ」

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次