日時項目を指定の形式に変換して表示する数式
2015-10-01 15:00:00
この形式で満足できない場合に、数式項目を作るのは常套手段かと思います。
特にCSVとかPDF出力の際には形式が指定されていることが多いNE。
ってことで、よく使ってる数式を1つ載せておきます。
毎回1から作ると面倒だし、こういうの1つは用意しておくと捗ります。
ちなみに今回は、和暦 + MM月 + DD日 + (曜日) + HH時 + MM分 のパターン。
一番面倒なやつですね・・・
/* DateTime を 平成XX年MM月DD日(曜日)HH時MM分 に変換する */ /* 年 */ IF(ISBLANK( Deadline__c ), "", "平成") & TEXT(YEAR(DATEVALUE( Deadline__c )) - 1988) & IF(ISBLANK( Deadline__c ), "", "年") & /* 月 1桁だったら0埋め */ IF(LEN(TEXT(MONTH(DATEVALUE( Deadline__c )))) = 1, "0", "") & TEXT(MONTH(DATEVALUE( Deadline__c ))) & IF(ISBLANK( Deadline__c ), "", "月") & /* 日 1桁だったら0埋め */ IF(LEN(TEXT(DAY(DATEVALUE( Deadline__c )))) = 1, "0", "") & TEXT(DAY(DATEVALUE( Deadline__c ))) & IF(ISBLANK( Deadline__c ), "", "日") & /* 曜日 */ IF(ISBLANK( Deadline__c ), "", CASE(MOD(DATEVALUE( Deadline__c ) - DATE(1900, 1, 7), 7), 0, "(日)", 1, "(月)", 2, "(火)", 3, "(水)", 4, "(木)", 5, "(金)", "(土)" ) ) & /* 時(24h表記) */ IF(LEN(TEXT(VALUE(MID(TEXT( Deadline__c ), 12, 2)) + 9 )) = 1, "0", "") & IF(VALUE(MID(TEXT( Deadline__c ), 12, 2 )) + 9 >= 24, /* 24時以降 */ "0" & TEXT( (24 - (VALUE(MID(TEXT( Deadline__c ), 12, 2)) + 9 )) * -1 ), /* それ以外 */ TEXT(VALUE(MID(TEXT( Deadline__c ), 12, 2 )) + 9) ) & IF(ISBLANK(Deadline__c), "", "時") & /* 分 */ IF(LEN(TEXT(VALUE(MID(TEXT( Deadline__c ), 15, 2)))) = 1, "0", "") & TEXT(VALUE(MID(TEXT( Deadline__c ), 15, 2))) & IF(ISBLANK( Deadline__c ), "", "分")