この記事では「エクセルにて関数を使用して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関数や並べ替えを使用すれば削除することができます
エクセルのさまざまな処理を理解し、業務に役立てていきましょう。