Excelでは、表の中で特定の記号や文字を入力した行だけを別シートへ自動的に表示する仕組みを作ることができます。例えば、チェック欄に「◯」を入力すると、その行の項目名を別シートへ反映するといった管理表や予定表、チェックリスト作成に便利です。
この記事では、指定した列に「◯」が入力された場合にA列の項目名を別シートへ表示する方法を、初心者でも分かるように具体例を使って解説します。
Excelで条件に一致した項目名を別シートへ表示する基本的な考え方
今回のような処理では、「◯が入力されているかを確認する条件」と「条件に合った行の項目名を取得する処理」の2つを組み合わせます。
例えばSheet1に以下のような表があるとします。
A列:項目名
E列:チェック欄
例:A5に「会議」、E5に「◯」を入力
この場合、E5に「◯」が入力されたら、Sheet2の指定セルへA5の「会議」という文字を表示させることができます。
1つのセルへ表示する場合はIF関数を使う
特定の1行だけを確認する場合は、IF関数を使う方法が簡単です。
Sheet2のE5セルに以下の数式を入力します。
=IF(Sheet1!E5=”◯”,Sheet1!A5,””)
この数式は「Sheet1のE5が◯ならSheet1のA5を表示し、それ以外の場合は空白にする」という意味です。
例えばSheet1のE5に◯を入力すると、Sheet2のE5にはA5の項目名が自動表示されます。
複数行から◯の付いた項目を一覧表示する方法
複数の項目を管理していて、◯が付いたものをすべて別シートへ一覧表示したい場合は、FILTER関数を使うと便利です。
Excel 365やExcel 2021以降であれば、Sheet2のE5などに以下の数式を入力できます。
=FILTER(Sheet1!A:A,Sheet1!E:E=”◯”,””)
この数式では、Sheet1のE列を確認し、「◯」が入力されている行だけを抽出して、A列の項目名を表示します。
例えば以下のような表の場合、
A5:資料作成 E5:◯
A6:電話対応 E6:空白
A7:メール確認 E7:◯
結果としてSheet2には「資料作成」「メール確認」のように、チェックされた項目だけが自動表示されます。
古いExcelでFILTER関数が使えない場合の方法
Excel 2019以前などではFILTER関数が利用できない場合があります。その場合は、INDEX関数やMATCH関数、IF関数を組み合わせて作成できます。
例えば、◯が付いた最初の項目を取得する場合は以下のような式を使います。
=INDEX(Sheet1!A:A,MATCH(“◯”,Sheet1!E:E,0))
この数式では、E列から最初に「◯」がある行を探し、その行のA列の項目名を表示します。
複数表示したい場合は少し複雑になりますが、作業内容に合わせて関数を組み合わせることで対応できます。
日付や予定表にも応用できる便利な使い方
この方法は、単なるチェック表だけではなく、さまざまな管理表で利用できます。
例えば、1行目に日付、A列に作業内容を入力した予定表を作成し、実施する項目に◯を付ける運用にすると、別シートに実施予定一覧を自動作成できます。
また、在庫管理表で「発注対象」に◯を付けた商品だけを別シートへ表示する、社員管理表で対象者だけを抽出するといった使い方も可能です。
数式を作る時の注意点
シート名に空白や特殊文字が含まれる場合は、数式内でシート名を「’」で囲む必要があります。
例えばシート名が「管理表」の場合は、以下のようになります。
=IF(‘管理表’!E5=”◯”,’管理表’!A5,””)
また、「〇」と「◯」は見た目が似ていますがExcelでは別の文字として扱われる場合があります。入力する記号は統一しておくことが大切です。
まとめ
Excelで指定した列に「◯」を入力した時、その行のA列の項目名を別シートへ表示することは可能です。
1つのセルだけを連動させる場合はIF関数、複数の項目を一覧表示したい場合はFILTER関数を使うと簡単に作成できます。
チェックリストや予定表、管理表などでは非常に便利な方法なので、入力作業を減らしてExcelを効率的に活用できます。


コメント