数式の編集を容易にする新しい 6 つの Excel 関数


(この記事は 2016 年 2 月 23 日に Office Blogs に投稿された記事 6 new Excel functions that simplify your formula editing experience の翻訳です。最新情報については、翻訳元の記事をご参照ください。)

 

このたび、Excel に新しく 6 つの関数が導入されました。これにより、よく使われる計算が簡略化され、タスクを実行するためにわざわざユーザー定義関数を作成するという手間が省けます。この 6 つの関数は皆様からのフィードバックに基づいて導入したもので、今後も Office 365 サブスクリプションの一環として、さらなる機能強化を提供してまいります。今回追加されたのは、リスト内または範囲内の文字列を結合する TEXTJOIN 関数と CONCAT 関数、わかりにくい IF 関数の入れ子を回避するための IFS 関数と SWITCH 関数、1 つ以上の条件を指定して範囲内の最大値を返す MAXIFS 関数と と最小値を返す MINIFS 関数です。各関数の詳細については、以下のセクションをご覧ください。

TEXTJOIN 関数と CONCAT 関数による文字列の結合

スプレッドシートを使用する場合、非常に一般的なタスクとして挙げられるのが文字列の結合です。しかし、これまでは特定のセル範囲の文字列を結合する場合に、各セルを個別に指定する必要がありました。新しい TEXTJOIN 関数と CONCAT 関数を使用すると、各項目の間にカンマなどの区切り記号を使用するかどうかを指定して、セル範囲の文字列を結合することができます。範囲を参照し、区切り記号を 1 回指定しさえすれば、その後の手間のかかる処理は Excel が行ってくれます。

従来の方法:

=CONCATENATE(A3, “, “, B3, “, “, C3,”, “, D3, “, “, E3)

TEXTJOIN 関数を使用した新しい文字列の結合方法:

=TEXTJOIN(“, “, TRUE, A3:E3)

たとえば、住所の個々の項目を 1 つの文字列に結合するとします。従来の方法では、各セルを指定し、それぞれの項目の区切りにカンマを繰り返し入力する必要がありました。

6-new-Excel-functions-1a

新しい方法は非常にシンプルで、カンマ (または任意の区切り記号) を指定し、空白セルを無視するかどうかを選択して、範囲を指定するだけです。

6-new-Excel-functions-2a

詳細については、TEXTJOIN 関数CONCAT 関数のオンライン ヘルプをご覧ください。

IFS 関数と SWITCH 関数による複数の条件の指定

新しい IFS 関数と SWITCH 関数を使用すると、複数の条件をテストして対応する結果を返す場合に、「IF(IF(IF()))」というように IF 関数を連続して入れ子にする必要がなくなります。IF 関数は Excel で最も頻繁に使用される関数の 1 つで、IF 関数内に IF 関数を使用する (IF 関数を入れ子にする) 手法は一般的に使用されてきましたが、入力に手間がかかったり、わかりにくかったりする場合があります。

新しい IFS 関数を使用するメリットは、1 つの関数で複数の条件を指定できることです。各条件の後に、その条件が true の場合に返される結果を指定するため、数式を作成したり、後から判読したりすることが非常に簡単になります。たとえば、テストの点数に応じて成績をつけるのに IFS 関数を使用する場合、以下のようになります。

=IFS(C1>=90, “A”, C1>=80, “B”, C1>= 70, “C”, C1>=60, “D”, C1<60, “Fail”)

6-new-Excel-functions-3a

この数式は、C1 セルの点数が 90 以上の場合は A を返し、80 以上 90 未満の場合は B を返し、70 以上 80 未満の場合は C を返す、というように処理していきます。この方法なら記述することも、判読して内容を理解することも非常に簡単になります。

SWITCH 関数でも複数の条件を処理します。IFS 関数と異なるのは、複数の条件付きステートメントを指定するのではなく、式と複数の値および結果を指定する点です。値は式と比較され、最初の完全一致に対応する結果がセルに適用されます。また、式がいずれの値にも一致しない場合に返される「既定」の結果を指定することもできます。IF 関数を入れ子にすると、同じ式を繰り返し入力しなければならない場合がありますが、SWITCH 関数を使用すればこの手間を省くことができます。

以下に例を挙げた数式の最初の部分では、B 列の項目の中央部からサイズのコード (XS、M、G など) を抽出します。この部分が長くなるため、1 回記述するだけで値の一覧と比較できる SWITCH 関数は非常に便利です。

以下の例は、次のように判読できます。

B 列の項目からサイズのコードを抽出します。コードが「XS」に一致する場合は、「Extra Small」を返し、「S」に一致する場合は「Small」を返す、というように処理していき、一致する値がない場合は、「Not Specified」を返します。

6-new-Excel-functions-4a

IF 関数を入れ子にしても同じ結果を返すことができますが、以下のようにかなり長くなります。

6-new-Excel-functions-5a

詳細については、IFS 関数SWITCH 関数のオンライン ヘルプをご覧ください。

MAXIFS 関数と MINIFS 関数によるデータの絞り込みと計算

COUNTIFS 関数、SUMIFS 関数、AVERAGEIFS 関数を使い慣れている方なら、MAXIFS 関数や MINIFS 関数についても、少し説明をお読みいただくだけで活用していただけるでしょう。従来の MAX 関数および MIN 関数では、特定の範囲内の最大値または最小値が返されますが、条件を適用してデータを絞り込むことはできませんでした。これを可能にするのが MAXIFS 関数と MINIFS 関数で、最大値または最小値を計算する前に 1 つ以上の条件を指定して、データを絞り込むことができます。条件は連続するセル範囲に適用することも、値を含むセル範囲に適用することもできます。たとえば、ある小売業者によってすべての店舗の売上データを記録しているテーブルがあるとします。MAXIFS 関数と MINIFS 関数を使用すると、指定した地域の店舗における指定した商品の売上高の最大値と最小値を返すことができます。

以下の例では、MINIFS 関数と MAXIFS 関数を使用して、テーブルから売上高の最大値と最小値を返しています。ただし、対象となる Sales 列の値は、Retailer 列の値が「BigMart」、Brand 列の値が「Longlast」、Sales 列の値が 0 より大きいという条件に一致する場合のみです。

6-new-Excel-functions-6a

詳細については、MAXIFS 関数MINIFS 関数のオンライン ヘルプをご覧ください。

ぜひお試しください

ぜひ新しい関数をお試しになり、その簡略化によって作業効率が向上していることを実感してください。Excel の他の関数や機能強化に関するご提案がありましたら、こちらのページ (英語) までご投稿をお願いいたします。

 

※ 本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。

Comments (0)

Skip to main content