Excelで表を作るならテーブルを作ろう!? テーブルを作れば構造化参照が利用できます!!
聞き流し用動画(YouTube)
はじめに
マイクロソフト社の「Excel」、みなさんは活用していますか?
「Excel」を使う時、「表」を作る事があると思います。
「表」を作ることにより、情報を一覧化し、集計をしたり、分析をしたりする事ができます。
今回は、「Excel」で表を作る時は「テーブル」にすると便利ですので、こちらのご紹介となります。
なお、動作環境ですが、「Excel for Mac」を使用しております。
「Windows版との違い」「バージョンでの違い」「個人の設定の違い」、諸々ございますので、一部画面や動きが異なる場合があります。
予めご了承ください。
表とは
「表」とは、「平面上にデータを記載してあらわした物」です。
例えば、「学校の時間割」は「曜日があり、時間があり、その時におこなう授業の内容が記された表」です。
また、「電車の時刻表」も「いつ、電車が来るのかをあらわした表」となります。
言い換えると、「表とは、情報が記録されている物」となります。
その「表」に対して、先頭行に「タイトル」などを入れ、縦と横を格子状の線で区切り、「一覧でみやすい形」となるように工夫をします。
「作業予定表」を例とします。
この「作業予定表」は、「No」「作業予定日」「作業完了日」「作業内容」「担当者」を「一覧で見やすい形」とした物となっています。
Excelでテーブル化
「作業予定表」ですが、このままでも「表」の役割を満たしているのですが、Excelで利用するなら、「テーブル」にしましょう。
この「テーブルにするメリット」については後ほど、ご紹介します。
「Excel」の「ホーム」タブより、「テーブルとしての書式設定」を選択します。
「テーブルとしての書式設定」を押すと、色々な「スタイル」が表示されます。
ご自身の好みで選んでください。
「テーブル」を選ぶと、「テーブルとしての書式設定」のポップアップが表示されますので、「表に変換するデータ範囲」を指定してください。
「表に変換するデータ範囲」を指定した時、先頭行に見出しがある場合は、「先頭行をテーブルの見出しとして使用する」にチェックをしてください。
これで、テーブルの作成が完了しました。
この後、項目(列)を追加したい時は、先頭行である見出しの右端に追加をすれば、自動的に「列」が、追加されます。
データを追加したい時は、最終行に何か値を入れれば、追加ができます。
テーブルの中で、「項目の追加」や「データの追加」は、普通の「列の挿入」や「行の挿入」にて行う事ができます。
そして、テーブル化により重要なのが、Excel内で「自動的にデータの範囲を認識してくれる」点となります。
これは、のちほど「テーブル化のメリット」について、ご紹介します。
テーブルのメリット
「表」は、先頭行にタイトルを入れて、1行ずつ、情報を入力していくのですが、情報が多くなるにつれて、情報が見つけにくくなります。
したがって、情報を見つける為に、Excelでは「VLOOKUP関数」などを使用して、情報の抽出を行います。
この抽出を行う際に、「自動的にデータの範囲を認識してくれる点」が、テーブル化のメリットとなります。
例えば、「VLOOKUP関数」を使用するとします。
「VLOOKUP関数」では、検索する「データの範囲」を指定します。
当たり前なのですが、その「データ範囲に存在しないデータ」を検索する事はできません。
「テーブル化のメリット」は、この点にあります。
データを追加した時、テーブルにしておくと「VLOOKUP関数」で指定した範囲が、「自動的に拡張」されます。
データが増えたからと、わざわざ、「VLOOKUP関数の修正を行わなくても良くなる」という事となります。
構造化参照について
「構造化参照」という難しい言葉を使ってしまいましたが、「Excel」では数式でセルの情報を取得する時、「相対参照」と「絶対参照」があります。
数式を利用されている人は、なんとなく理解をしていると思いますが、あるセルに、「別のセルの情報をコピーする数式」を作るとします。
そして、この数式の入ったセルを移動させると、「コピーするセルの位置が変わるのが、相対参照」で、「コピーするセルの位置が変わらないのが、絶対参照」となります。
「構造化参照」は、こうしたセルの情報の参照方法の一つとなります。
「構造化参照」を行うには、作成した「テーブル」に「テーブル名」をつけます。
「VLOOKUP関数」で、検索範囲を「テーブル名」で指定をします。(なお、「VLOOKUP関数」の特性上、一番左端を検索キーとしている為、今回以降は「No」にて検索を行います)
次に、「列が追加となった時」の対応となります。
「相対参照や絶対参照」の時は、数式まで変更しないといけなかったのですが、「構造化参照」では、「1行目のタイトルを利用」する事により、「VLOOKUP関数」の変更は不要となります。
=VLOOKUP(B2,作業予定表,COLUMN(作業予定表[作業内容]),FALSE)
=VLOOKUP( 検索キー , テーブル名 , COLUMN( テーブル名 [ 1行目タイトル] ) , FALSE )・・・ちなみに「 COLUMN関数」では、セルの指定も可能です
「テーブル名」や「1行目のタイトル」を利用するので、人が見ても、分かりやすくなります。
simacatより一言
今回は、ここまでと致します。
「Excel 構造化参照」で検索をすると、多くの情報が出てきますので、お仕事に利用できる物があれば、ご利用ください。
また、これに合わせて、「スピル関数」という関数もありますので、ご興味のある方は、お調べ頂きたいと思います。
今後も、「お仕事の役に立ちそうな、Excelの関数や機能」をご紹介していきたいと思います。
コメント