Excel

【Excel】エクセルにて1行おきに削除する(間引き)方法【関数使用・使用せず】

当サイトでは記事内に広告を含みます。

この記事では「エクセルにて関数を使用して1行ごとに削除する(間引き)方法」「エクセルにて関数を使用せずに1つ飛ばしで行を削除をする(間引き)方法」について解説していきます。

これらの処理としては、主に、

・INDIRECT関数か
・並べ替え(おすすめ)

を使うと良く実際のサンプルを用いて見ていきましょう。

 

エクセルにて関数を使用して1行ごとに削除する(間引き)方法

エクセルにて関数を使用して1行ごとに削除するには上述の通りINDIRECT関数か並べ替えを使用するといいです。

関数をどうしても使いたい人はこの方法がおすすめです。

ただ並び替え機能でも問題ない場合には、次の見出しの方法を参考にしてみてください。

 

まずはINDIRECT関数を使用して一行ごとに行の削除を行いましょう。INDIRECT関数を使用する場合、実際には行の削除というよりは、必要なデータの「抽出」というイメージの方が近いです。

抽出したい(削除したくない)データの行番号を調べます。

今回の場合は3~13の奇数行(データ部)のみを抽出した表を作成します。

現在の表の隣に同様の表をつくります。項目をコピペした後、抽出したい行番号を入力し、このセルの右下にカーソルを併せた際に出る十字をドラッグ&ドロップさせて一括処理しましょう。

抽出したい行番号が表示されました。

次は、任意のセル(今回はG3)に=INDIRECT(“B”&F3,TRUE)と入力します。

この数式の意味を解説していきます。

まず、INDIRECT関数では

=INDIRECT(参照文字列,【参照形式】)

と入力します。

参照形式はR1C1形式の場合はFALSEを、R1形式の場合はTRUEを入力します。

例えば任意のセルに=INDIRECT(“A3”,TRUE)と入力した場合は「A3」に入っている値、今回なら3が表示されます。

今回では

・=INDIRECT(“B”  :B行の
・&          :上記と下記を合体させる
・F3         : F3に入力している数字(今回は3)
・今回はR1形式(A1等)の文字列なのでTRUE

と処理します。

これで、B3を参照させているので、「=B3 」と同じ意味になります。

セルB3を参照しているため、セルB3に入力されている「A社」が表示されました。

次は同様に、売上の下のセルにもINDIRECT関数を入力していきます。

売上の下のセルに=INDIRECT(“C”&F3,TRUE)と入力します。

こちらも先ほどと同様に

・=INDIRECT(“C”  :C行の
・&          :上記と下記を合体させる
・F3         : F3に入力している数字(今回は3)
・今回はR1形式(A1等)の文字列なのでTRUE

と処理します。

これで、C3を参照させているので、「=C3 」と同じ意味になります。

セルC3を参照するという意味ですので、セルC3の値である100が表示されます。

後は、先ほど式を入力したセル2つ(G3:H3)を選択し、このセルの右下にカーソルを併せた際に出る十字をドラッグ&ドロップさせて一括処理しましょう。

先ほどの数式が下にもコピーされ、一行置きの空白部が削除された表が完成しました。

ただ、INDIRECT関数は非常に便利な関数なのですが、扱うのにある程度の慣れが必要で、最初はすこし難しく感じるかもしれません。

その場合は、並べ替えを使用した行の削除の方がおすすめです。

 

エクセルにて関数を使用せずに1つ飛ばしで行を削除をする(間引き)方法

上ではINDIRECT関数を使用して、1行おきの行を削除した表を作成しましたが、並べ替えを用いても対応できます。

具体的には、表の隣の列に並べ替え用のフラグ列を作成します。

今回では、セルD2にフラグと入力し、D3のセルに1、D4のセルに2を入力します。

後は、先ほど式を入力したセル2つ(D3:D4)を選択し、このセルの右下にカーソルを併せた際に出る十字をドラッグ&ドロップさせて一括処理しましょう。

今回は「セルのコピー」をクリックします。

表の一番下まで1、2の順に入力できました。

ここで、1の数字が入っている行が必要な行で、2が入っている行が空白行で削除したい行になります。

次に、セルD3を基準に表全体を範囲選択します。

範囲選択ができたら、リボンの中の「データ」タブにある、並べ替えで「昇順」をクリックすると、必要行である1と空白行である2が並べ替えられ、空白行が下にまとめて移動しました。

表のはみ出た2の部分を選択し、Deleteキーで削除します。(フラグの列を丸ごとDeleteキーで削除してもよいです。)

1行おきにあった空白行が削除された表が完成しました。

 

まとめ エクセルにて間引きを行う方法(1行ごとの削除)【関数使用・使用せず】

この記事では「エクセルにて関数を使用して1行ごとに削除する(間引き)方法」「エクセルにて関数を使用せずに1つ飛ばしで行を削除をする(間引き)方法」について解説しました。

いずれにしてもINDIRECT関数や並べ替えを使用すれば削除することができます

エクセルのさまざまな処理を理解し、業務に役立てていきましょう。