【Excel】結合セルのフィルターで1行しか表示されない原因と対処法

Word・Excel

エクセルの『フィルター』、とても便利な機能ですよね。

しかし結合したセルに対しては、途端にうまくいかなくなる困った面もあります。

 

たとえば、下記のような表があるとして

 

「会社名」でフィルターをかけると、このように1行しか表示されません。

 

「会社名」に対し、本来なら「担当者名」は3人とも表示されて欲しいのに、1人しか表示されないのですね。

 

今回は、このようなことが起きる原因や対処法、すでに作成済みの表を修正する方法を解説します。

 

スポンサーリンク
スポンサーリンク

結合セルがフィルターで1行しか表示されない原因

さて、結合したセルの中身は、一体どうなっているのでしょう?

 

下記の場合「ABC商事」は、ひとつのセルに名前が入っているように見えますが…

 

実際は、セル結合を解除するとこうなっています。

 

ご覧のとおり、A2セルだけ「ABC商事」と入力があり、A3・A4セルは空白なのです。

そのため「ABC商事」でフィルターをかけても、対象になるのはA2セルだけです。

結果として、担当者も田中さん(B2)しか表示されません。

 

新しい表で複数行を表示できるようにする方法

フィルターをかけても、3行(複数行)すべてを表示する方法をご紹介します。

これから新しく作る表と、すでに使用している表では対処法が違います。

 

まずは、新規で作成する場合を見ていきましょう。

 

数式で会社名を自動表示する

まだ何も入力されていない表は、既に入力された表に比べて設定が簡単です。

 

まずは、3行で表示するためのデータを作成します。

このデータは「コピーして、元の表に貼り付けるための一時用」ですので、別シートに作りましょう。

※作業が終わったら、この別シートは削除して構いません。

 

作成するデータは、以下のとおりです。

ひとつ上のセルを反映させる数式です。

A2セル:=IF(A1="","",A1)

A3セル:=IF(A2="","",A2)

なぜIF関数を使うかと言うと、
フィルターに「0」を表示させないようにという配慮です。

 

A1:A3をコピーします。

 

元のシートに戻り、A2:A4(結合セル)の上で右クリック → 貼り付けオプションの「数式」をクリック。

 

A2:A4(結合セル)をコピーし、該当セルへ貼り付け

 

試しに文字を入力し、フィルターをかけてみましょう。

3行で表示されればOKです!

※ 結合セルの文字を入力し直すときは…
文字を入力し直したいときは、上書き入力や、Backspaceキーで修正することをおすすめします。
結合セルを選択してDeleteキーを押すと、数式も削除されます
数式が削除されると、1行のみの表示になってしまうのでご注意ください。



入力済みの表を一括で修正する方法

次のように、すでに結合セル(会社名)に入力がある場合、一括修正するには工夫が必要です。

 

何も入力がなかったときは、数式を上書きすれば設定できました。

しかし、すでに会社名が入力されている状態で同じことを行うと、会社名が消えてしまいます。

 

ここでは、入力済みの会社名はそのままに、3行で表示する方法をご紹介します。

 

会社名を残したまま一括修正する手順

 

結合セルのある「列」をコピーして、別のシートに貼り付けます。

 

列を選択したまま、「ホーム」→「セルを結合して中央揃え」をクリックし、

セル結合を解除します。

 

となりの列に、行数に合わせた数字を入力します。

今回は3行表示にしたいため、「1」「2」「3」を入力します。あとは、コピペでOKです。

 

結合セルの2行目・3行目に、以下の数式をコピーします。

一つ上のセルを指定します。IF関数を使うことで、0のときは空白表示になります。

・2行目(A3のとき):=IF(A2="","",A2)

・3行目(A4のとき):=IF(A3="","",A3)

 

数字を入力した列(B列)にフィルターをかけ、2・3行目だけを表示させます。

数式が入った2・3行目だけを表示し、一括でコピペできる状態にします。

 数式が入っているセル(A3:A4)をコピーします。次に、貼り付けたい範囲を選択し、Enterキーを押してください。

 

フィルターを解除します。

「ホーム」→「並べ替えとフィルター」→「クリア」で一気に解除できます。

 

修正したデータ(A列)をコピーします。

→ 元のシートに戻り、上書きしたいデータの列を選択して右クリック

→「貼り付けオプション」の「数式」を選択。

 

「会社名」でフィルターを掛けてみましょう。

3行とも表示されればOKです。

 

書式設定を貼り付ける場合の注意点

既存の表を変更する方法として、もう一つ「書式設定」を貼り付ける方法もあります。

やり方としては、次のようになります。

 

結合セルを解除し、あらかじめ2・3行目に入力します。

 

空いている場所に結合セルを作成し、コピー。

→ セルを結合したい範囲を選択し、右クリック。

→「貼り付けオプション」から「書式設定」を選択。

 

セルが結合されました。

これで一見、問題ないように見えますが…

 

会社名を変更して、

 

セル結合を解除すると、実は2・3行目は変更されていないということが分かります。

セルが結合された状態で入力し直すと、1行目しか修正されないのです。

 

「書式設定」の貼り付け自体に問題はありません。

ただし、2・3行目に会社名を直接入力すると、あとで会社名を変更した際にデータが一致しなくなります。

そのため、2・3行目は次の数式で連動させることをおすすめします。

A3セル:=IF(A2="","",A2)

A4セル:=IF(A3="","",A3)

 

これでしたら、1行目が変更されたとき、自動で2・3行目も変わります。

参考にしてください。

 

うまく表示されないときの確認ポイント

Deleteキーを押したら1行しか表示されなくなった

……Deleteキーで数式が削除された可能性があります。数式を再設定してください。

 

フィルターに「0」が表示される

……IF関数を使わずに設定すると、フィルターに「0」が表示されることがあります。
気になる場合はIF関数を使用しましょう。

 

会社名を変更しても2・3行目が変わらない

……2・3行目が直接入力になっている可能性があります。
セルに数式が入っているか確認してください。

 

こちらも知っていると便利な小技です

【Excel】フィルターで空白行を含める方法|先頭行が空白でも設定できる

 



まとめ

今回は、結合セルをフィルターで検索したときに、1行しか表示されない原因と対処法をご紹介しました。

 

結合セルは見た目では1つのセルに見えますが、実際にデータが入っているのは先頭行だけです。そのため、フィルターをかけると1行しか表示されません。

 

複数行を表示したい場合は、2・3行目にも会社名が入っている状態を作る必要があります。その際は、直接入力ではなく数式を利用することで、会社名を変更したときも自動で更新されます。

 

また、既存の表を修正する場合は、一括で設定することも可能です。

同じような表を使用していて「フィルターで1行しか表示されない」とお困りの方は、ぜひ今回の方法を試してみてください。

 

 

【関連記事】

◎ Excelの入力ミス防止として、こちらもおすすめです

【Excel】プルダウン(入力規則)の作り方|家計簿で入力ミスを防ぐ方法

 

コメント

タイトルとURLをコピーしました