カスタマイズ

月数を計算する

概要

開始日と終了日の間の月数を計算します。

結果は直接フィールドに入れたり、他のアクションから参照したりできます。

使い方

「開始日」と「終了日」を日付または日時で指定します。式を使用して日付フィールドや日時フィールドの値を指定することもできます。

日時フィールド値が指定された場合、日付はそのアプリを開いているユーザーのタイムゾーン設定に基づきます。また、時刻部分は計算に含まれません。

開始日より終了日のほうが過去の場合は、結果はマイナスの値になります。

計算結果を別のフィールドに入れたい場合、「セット先フィールド(省略可)」パラメーターにそのフィールドを選択します。

計算結果をすぐフィールドに入れるのではなく、他のアクションで使いたい場合は式を利用します。

「月数を計算する」をセットしたアクションを実行すると、アクションの結果としてその月数が内部に保存されます。保存された月数は、数式を使用して、「=$1」などで取得できます。

開始日や終了日に正しくない日付をセットした場合はアクション実行時にエラーになります。この場合、アクションの結果は NaN (数値ではないことを示す結果)になります。

設定するパラメーター

「開始日」「終了日」「月内の日の取り扱い」「セット先フィールド」を設定します。

開始日

開始日を指定します。

日付フィールドや日時フィールドの値を参照したい場合

=日付_2

のように、「=」をつけてフィールドコードで参照してください。

現在の日付を指定したい場合は以下のようにします。

=today()

終了日

終了日を指定します。

開始日と同様、式を用いて、日付フィールドや日時フィールドの値を参照したり、現在の日付を指定することが可能です。

月内の日の取り扱い

「月内の日も考慮」にした場合、「開始日の月内の日 > 終了日の月内の日」であれば、終了日の月はカウントしません。

「月内の日は無視」にした場合、月だけを見て計算します。

  • (例) 開始日 2019-01-15、終了日 2019-09-10 の場合、
    • 「月内の日も考慮」の場合、7か月になります。
    • 「月内の日は無視」の場合、8か月になります。
  • (例) 開始日 2019-01-15、終了日 2019-09-20 の場合、
    • どちらの場合も、8か月になります。

セット先フィールド(省略可)

計算結果を他のフィールドにセットする場合に指定します。直接フィールドにはセットせず、計算結果を別のアクションで使用したい場合は、省略できます。

セットされるのは数値部分のみで、単位名はつきません。

テーブル内のフィールドを指定した場合、特別な場合(*1)を除き、テーブル内のすべての行が処理されます。

(*1) 条件側で、「フィールドの値を編集して値が変わった時」のように、テーブル行を限定するように条件が入っている場合は、対象の行だけ処理されます。

選択可能なフィールドタイプは以下の通りです。

  • 文字列(1行)
  • 数値
  • 文字列(複数行)
  • リッチエディター

krewSheet 対応状況

対応しています。

ただし、「セット先フィールド(省略可)」に以下の制限があります。

  • ルックアップでコピーされるフィールドにはセットできません。
  • 以下のフィールドは「レコードを保存する直前(削除時は除く)」のようにレコード保存のタイミングのみでセット可能です。やや専門的になりますが、より詳しく知りたい方は krewSheet のドキュメント も参考にしてください。
    • krewSheet の表示列に含まれていないフィールド
    • krewSheet で読み取り専用に設定されているフィールド
    • リッチエディターフィールド

関連記事