アスキー・ドットPC編集部(編):すっきりわかった!エクセル関数 組合せ技&関数事典

作成日: 2013-01-14
最終更新日:

概要

Excel の関数について、Excel 2000, 2002, 2003, 2007 に対応して述べる。

感想

カラーは半分

この手の本はすべてがカラーページでうっとうしいのだが、 この本は総カラーは前半分だけである。これはすがすがしい。

誤植

p.82 右列、下から4 行目、QUOTENT 関数とあるが、正しくは QUOATIENT 関数。 最初の式での表示は正しい。

p.128, IMSQRT(-4) の値が 1.2246…… + 2i となっているが、正確に書くべき。 理論的にはただの 2i、つまり実部が 2 で虚部が 1 の純虚数である。 Excel で計算すると 1.22460635382238E-016+2i である。つまり1.2246 から E-016 のところは非常にゼロに近く、 ゼロそのものといってよい。ただし、コンピュータで扱うゴミがあるので、どうしても表示してしまう、 ということを付け加えないとならないだろう。

ちなみに、IMSQRT は IMaginary SQRT (虚数が扱える)平方根、という意味と思われる。

NETWORKDAYS

この関数名を見たとき、ネットワークの日数とはなんだろう?と不思議に思った。 なんのことはない。これは NET (ネット、正味)の WORKDAYS (営業日、稼働日)の意味だとわかった。

使い方。下記で B3 セルにマウスポインタをもっていくと、注釈で式が出てくる。

 AB
1起算日 2013/5/1
2締切日 2013/7/31
3残り日数 64
4祝日
55月3日憲法記念日
65月4日みどりの日
75月5日こどもの日
87月15日海の日

なお、海の日はハッピーマンデーだから、ほかの年は暦日がずれる

条件付き書式

Excel 2007 からインターフェースが大きく変わった。たとえば、この条件付き書式は、 Excel 2003 より前はプルダウンメニューの「書式」にあったが、 Excel 2007 からはホームタブの「条件付き書式」を選ぶことになった。

IF + VLOOKUP

こんな式が出ている

=IF(VLOOKUP(E5,$A$3:$C$8, 3, 0) = "", "欠席", VLOOKUP(E5,$A$3:$C$8, 3, 0))

直観的に、VLOOKUP が2回も、それもまったく同じものが出ているのがもったいないと思う。

IFERROR + VLOOKUP

これと少し似ているが、IF + ISERROR の組み合わせがある。ISERROR は Excel 2007 からの関数である。

=IF(ISERROR(VLOOKUP(E5,$A$3:$C$8, 3, 0)), "不明", VLOOKUP(E5,$A$3:$C$8, 3, 0))

2003 までは上記のように記述しなければならなかった。しかし 2007 からは次のように書ける。

=IFERROR(VLOOKUP(E5,$A$3:$C$8, 3, 0), "不明")

なんという省エネだろう。

本当は、IF + VLOOKUP でも、IFERROR のほかに、IFBLANK など、 それっぽく動くものがあればいい。しかし、2007 では IFERROR だけである。 自分で作るにはどうすればよいか。2003 ではまず VBA でマクロを作る。

Function IfError(inout As Variant, outonly As String)

    On Error GoTo ErrorHandler

    If IsError(inout) Then
        IfError = outonly
    Else
        IfError = inout
    End If

    Exit Function

ErrorHandler:
    Resume Next

End Function

あとはこれをデフォルトの箇所に xla 形式で保存する。名前は myaddin.xla などでいい。 すると、ツールのアドインにこの myaddin が出てくるのでこれをチェックすればよい。

データベース関数(D 関数)

エクセルの関数で、データベース関数とは、検索の対象となる表と、検索の条件を表す表を別に作り、 この条件表にあてはまるデータを検索対象の表から探して値を求める関数である。この本では、 DAVERAGE, DSUM が実例で紹介されていて、DCOUNT も名前だけだが挙げられている。 全部で D 関数は 13 種類ある。

getpivotdata も、D 関数に入れられている。また、その他の D で始まる関数は、 dget を除いて D がない関数もある。これらは、D の有無だけの違いである。 dget は、条件を満たすレコードが1つだけある場合にはその値を返し、 全くない場合あるいは2つ以上ある場合は、エラーとなる。

条件を満たす値に対してホゲホゲする

条件を満たす値に対していろいろな演算を行うときの方法はいろいろある。 たとえば、この本の 134 ページには、sumif 関数を使う方法が載っている。 ただし、条件が増えた場合は、DSUM 関数もしくは条件付き合計式ウィザードを使うように、 とのことである。このウィザードを使うには、 2003 までではツール→アドイン→条件付き合計式ウィザードにチェックすればよい。 実際に使うには、ツールの「ウィザード」から「条件付き合計式」を選ぶ。

Excel 2007 からはSUMIFS 関数が新たに付け加えられた(p.244)。 p.134 の選択肢として SUMIFS 関数も書いてほしかった。

書誌情報

書 名すっきりわかった!エクセル関数 組合せ技&関数事典
著 者アスキー・ドットPC編集部(編)
発行日2007 年 10 月 15 日
発行所アスキー
定 価1800円(本体)
サイズ?版
ISBN978-4-7561-5023-3
その他南越谷図書館で借りて読む

まりんきょ学問所読んだ本の記録 > アスキー・ドットPC編集部(編):すっきりわかった!エクセル関数 組合せ技&関数事典


MARUYAMA Satosi