エクセルif関数:上のセルの内容で表の空欄を埋める

空欄がある表の、空欄を埋める

さあ、データの加工をしよう!
と思って、もらったデータを見ると、

  • 現金出納帳をもらったが、
    同じ日付が続くときに、日付が空欄になっている
  • 売上一覧をもらったが、
    同じ売上先が続くときに、売上先コード、売上先名称が空欄になっている

といったようなことは、よくあります。

たしかに、
人が見る分には、
同じ内容を何回も繰り返し入力されるよりも、
2行目以降を空欄にしておいてもらったほうが見やすい場面もあります。

でも、
データ処理をするには、空欄があると非常に不便です。

なぜなら、

  • オートフィルタ
  • ピボットテーブル

などの便利な機能が、
空欄があると、使いにくくなってしまうからです。

データの空欄を埋める式、関数

私が、そういうデータを受け取ったとき、

真っ先に行うのが、
「データの空欄を埋める」
という作業です。

例えば、
A列に日付が入っているが、一部の日付が省略されてしまっているという場合、

kuuran_1_1

いろいろなやり方がありますが、
私の場合は、次のような方法を使います。

  1. 空いた列(例えばF列)に、if関数を使った式を入れて、
    A列の空き欄を埋めた結果が表示されるようにする。
  2. F列をA列に値貼り付け
kuuran_1_2

ここで、ポイントになるのが、「if関数を使った式」ですが、

例えば、
F3セルに次のような式を入れます。

=if(A3="",F2,A3)

具体的には、次のような意味です。

論理式(条件):

A3セルが空欄かどうか

真の場合:

(A3セルが空欄であれば)F2セル(=ひとつ上のセル)の内容をコピー

偽の場合:

(A3セルが空欄でない場合には)、A3セルの内容をコピー

これを、一番下までコピーすることで、
F列には、A列の空欄が埋まった値が、入力されます。

kuuran_1_3

if関数を使いこなせるようになると、
こういう処理が一瞬で実現できるようになるわけです。