5

西暦から和暦に変換する一例です。スクリプトやExcelなどを利用せず、既存のノードとライブラリを組み合わせています。

なお、入力データが日付として有効かチェックは入れてないので、2018/15/1を「平成30年15月1日」と、返します。

(チェックしたい方は「日付書式変換」など利用されるといいかと)

Excel使用すればセルの書式設定やDATESTRING関数で楽に結果出ますし、需要があるかと言うと疑問で

プロパティの設定については簡単に説明しきれないので特記するところだけのヒント止まりですが、何かのお役に立てれば幸いです。

なお、元号の開始日はとらえ方の違いはあろうかと思いますが、こちらでは天皇崩御翌日として分岐に設定しています。

月日は現状の西暦で表します。そして、元年は数値1で表示。

入力データ(日付)を判定して、和暦の年数は西暦を引き算して、該当する元号を付けて、年月日に整える様なシナリオです。

この様なフローチャートにしました。

【特記】

・各「四則演算」は 引き算で和暦の年数を取得しています。

  プロパティ 例 ) 年数 = 日付分割で取得した年(YYYY) - 各年号開始の前年(YYYY)

・各「元号連結」 と 「和暦(年月日)設定」 は ライブラリの文字列連結(n文字)を適宜利用しています。

・各「分岐」は、日付範囲指定のように複数条件を設定しています。

 分岐ノードでは>="yyyy/mm/dd"の形式で比較ができないので、骨が折れました。

 日付fromは 年・年月・年月日 を段階的に比較して、日付toは 実行結果が初期値のままか否かで比較する様にして、

 総合判定でtrueだったら、元号を連結する処理に移行します。

  プロパティ 例 )

  条件

  - ・AND([AND]でまとめて総合判定)

    - ・OR (ここで、日付fromの条件設定。[OR]でまとめて判定)

      - ・条件 (年までの比較) 

      - ・AND (年月までの比較) ※場合により不要

        - ・条件 (年の比較)

        - ・条件 (月の比較)

      - ・AND (年月日までの比較) ※場合により不要

        - ・条件 (年の比較)

        - ・条件 (月の比較)

        - ・条件 (日の比較)

    - ・条件 (ここで、日付toの条件設定。実行結果が初期値か否かで判定)

kenji 回答した質問
回答とコメントは、会員登録(無料)で閲覧できるようになります。