今回は下記のようなタスク一覧を「ステータスが完了以外で、期日の近い5つのタスク」を抽出する方法を考えてみました。
こんな日付の並びがバラバラなタスク一覧から・・・
期日の近いタスク5件のみを自動で抽出する!
目次
手順
使用する関数
まずは今回使用する関数を確認してみましょう。
使用する関数は3つです。
TAKE関数
指定した範囲から、指定した行数・列数分、配列を抜き出します。
引数 | 説明 | 省略可否 |
---|---|---|
array | 抜き出したい範囲を指定する | 必須 |
rows | 抜き出した行数を指定する | 必須 |
columns | 抜き出したい列数を指定する | 省略可 |
SORT関数
指定した範囲から、基準にした列または行を並び替えて配列を返します。
引数 | 説明 | 省略可否 |
---|---|---|
配列 | 並び替えたい範囲を指定します。 | 必須 |
インデックス | 並べ替えの基準となる列または行の位置を、先頭を1として指定します。 | 省略可 |
順序 | 並べ替えの順序を以下のように指定します。 1:昇順 -1:降順 | 省略可 |
基準 | 行・列どちらで並び替えるか指定します。 TRUE:列で並び替える FALSE:行で並び替える | 省略可 |
FILTER関数
指定した範囲から、指定した条件に一致する配列を抜き出します。
引数 | 説明 | 省略可否 |
---|---|---|
配列 | 抜き出したい範囲を指定します。 | 必須 |
含む | 指定した範囲から抜き出したい条件を指定します。 | 省略可 |
空の場合 | 条件に一致しない場合に返す値を指定します。 | 省略可 |
関数を組み合わせる
上記3つの関数を使用して、下記のような関数を入力します。
※関数をわかりやすくするために、タスク一覧はテーブル化して「タスク一覧」というテーブル名を付けています。
=TAKE(SORT(FILTER(タスク一覧,タスク一覧[ステータス]<>”完了”),2,1,FALSE),5)
分解してみる
分解してみてみるとわかりやすいかもしれません。
TAKE
引数 | 入力内容 |
---|---|
array | タスク一覧 |
rows | 5 |
columns | 入力なし |
SORT
引数 | 入力内容 |
---|---|
配列 | タスク一覧 |
インデックス | 2 |
順序 | 1 |
基準 | FALSE:行で並び替える |
FILTER
引数 | 入力内容 |
---|---|
配列 | タスク一覧 |
含む | タスク一覧[ステータス]<>”完了” |
空の場合 | 入力なし |
まとめ
とりあえず下の関数を覚えとけば間違いなし。
=TAKE(SORT(FILTER(抜き出したい表の範囲,条件を指定する範囲と条件),並び替えたい値は何列(行)目か,昇順か降順か(1 or -1),列・行どちらで並び替えるか(TRUE or FALSE)),先頭からいくつ抜き出すか)
業務代行始めました!
ココナラにてExcel業務の代行サービスを始めました。
以下のような事でお悩みの方、お気軽にご相談ください。
以下のような事でお悩みの方、お気軽にご相談ください。
エクセルでの業務を効率化するツールを作りたいけど、イメージ通りに作れない・・・
業務で使っている既存のファイルが使いにくいけど、どう改修すればいいかわからない・・・
エクセルを使った業務は苦手なので、そもそも誰かに代行してほしい・・・