September 6, 2014

エクセルの数式を理解しやすくするには

エクセルは自由度が高く様々な使い方ができるのでとても便利なツールです。その反面、人によって使い方が違ってくるため、他人の作った数式がたくさん入ったエクセルシートになると、その意味を理解するのが困難になることがあります。
数式を分かりやすくするいくつかのTipsをメモします。



セルに名前を付ける

通常、エクセルではセル参照はA1形式かR1C1形式になるわけですが、多数のセルを参照した数式になると、どのセルがどういう意味の数値なのか、を理解するのがとても困難になってしまいます。そこで使えるのが、セル参照に対して名前を定義するという機能です。

エクセルで、名前を付けたいセルを選び、「数式リボン>名前の定義」より、セルに名前を定義することができます。また、多数の名前を定義する場合は、便利な機能があります。名前と値を以下のように整列しておき、名前および値を入力したセル全体を選択し、 「数式リボン>範囲から作成」(CTRL+SHIFT+F3)とすれば、多数のセル範囲に名前を簡単につけることができます。

name1value1
name2value2
......

これにより、以下のような式が書け、直観的に理解できるようになります。
セル参照で書いた場合 名前を定義した場合
=A1*B1=price*volume A1:price
B1:volumeと定義

セルの名前をフィルタのように使う

名前の定義と、セル範囲の積をとる演算子である半角空白文字を使うことで、セルの名前をあたかもフィルタのように使うことができます。まず、以下のようなセル範囲を用意して、列には個人の名前を、行には月の名前を付けます。

JohnMaryBob
Jan10002000650
Feb1100600900
Mar1200800850

単に1月の売上合計を表示したいならば、以下のように書けるわけです。
=sum(Jan)

さらに、名前の定義と半角空白文字を使ってJohnの1月の売上を表示できます。
=John Jan

また、Johnの1月と2月の売上を合計したいならば、セル範囲の和をとる演算子であるコロン「:」を使うと以下のように書くことができます。
=sum((John Jan):(John Feb))

テーブルを使う

Excelの比較的新しい機能としてテーブルがあります。これは、自動でデータ範囲を認識し、フィルタや簡単な計算を手軽に実行できる機能ですが、テーブルは自動的に名前を定義してくれるという点でも大変便利な仕組です。
例えば、テーブル内の行や列を参照したい場合は、Table1[ColumnName]といった形で参照することが可能で、名前がシートレベルやブックレベルで定義されるのに比べてテーブルごとのスコープとなるため、定義した名前が衝突する心配もないため、大変使い勝手が良くなっています。

数式を表示する

エクセルのワークシートの数式をいちいちセルをクリックして表示、確認するのが手間を省くことができるのがFormulatext関数です。与えたセルに含まれる数式をテキストとして表示でき、ワークシートを簡単に確認できるようになります。
一時的に数式を確認したい場合は、監査ツールを使うのも便利な方法です。「数式リボン>数式を表示ボタン」をクリックすると、シート上のすべてのセルの数式を表示することができます。

 トレースする

さらに、数式同士の関係を確認したい場合に便利なのが、トレースツールです。数式リボンにあるトレースボタンを押すことで、セル同士の依存関係を矢印で表示できるため、複雑なエクセルファイルであっても、構造が読み取りやすくなります。

No comments :

Post a Comment