CurrentDate関数(TKInfo.dll)(Ver6.50対応版)
 CurrentDate関数は、現在の日時をパラメータで指定された形式で返します。
パラメータ1
 現在の日時を返す形式を指定します。文字列中で、以下の文字列部分は日時の該当部分に置き換えられ、それ以外の部分はそのまま返り値に返ります。
YYYY 年(西暦)を4桁で返す
YY 年(西暦)を2桁で返す(例:2001年なら01)
平成Y 年を和暦で返す
平成gY 年を和暦で返す、1は「元」に変換する
E平成Y 年を和暦で返す(年号表記は英語)
M 月
D 日
W 何曜日か(月、火、…)
EM 月を英語3文字で(Jan、Feb、Mar、…)
EFM 月を英語フルスペルで(January、February、March、…)
EW 何曜日かを英語3文字で(Sun、Mon、Tue、…)
EFW 何曜日かを英語するスペルで(Sunday、Monday、Tuesday、…)
h 時
m 分
s 秒
i 午前か午後かを、「AM」または「PM」のような形式で
j 午前か午後かを、「午前」または「午後」のような形式で
k 時を12時間単位で(例えば午後2時なら14ではなく、2を返す)
J,K 小文字の「j」および「k」と基本は同じだけども、午後0時を午前12時とする。
 M〜s、kについては、例えば「MM」と指定すると、例えば1月の場合に「01」を返すようになります。
 M〜s、kの直前に空白がある場合は、値が2桁になった時にその空白部分に数字を入れます。例えば、「YY/ M/ D」と指定すると、2000年1月1日の場合に「00/ 1/ 1」と返り、12月31日の場合には「00/12/31」と返ります。
 W、i、j については、例えば「W」と1文字書くと、その部分が「月」のような文字に置き換わるので、例えば「WW」のように書く必要はありません。
YY/MM/DD(W) hh:mm:ss
YYYY/M D hh:mm
 Y〜sの大文字/小文字を間違えるとうまく機能しないので注意してください。

 「平成Y」について、パラメータ1の文字列の途中に"平成"という文字列があると、それを見つけた所以降から、「Y」または「YY」は和暦の値を返す動作になります。なので、例えば「YYYY平成YY」と書くと、最初の4桁のYYYY部分は西暦になって、後のYYは和暦になります。
 現在の日付がもしかして平成じゃなくて昭和になってる場合は、"平成"と書いた部分が自動的に"昭和"になって返ってきます。

 「E平成Y」は、「E平成」の部分が英語の「H」(または昭和の場合はS)に置き換わる以外は、「平成」と同じです。たとえば「E平成YY」と書くと、それは「H24」のような文字列に置き換わります。「E平成.YY」と書くと、「H.24」のようになります。
パラメータ1を省略した場合:
 パラメータ1を省略したり、""を指定した場合は、現在の日時をDate:ヘッダにあるような形式で返します。


返り値(文字列型)
 日時の文字列です。


補足:秀丸エディタから呼び出して使う件について
 この関数やFormatDate関数ShiftDate関数関数は、秀丸エディタのマクロからtkinfo.dllをロードして呼び出しても使えますが、使えるのは秀丸メールV6.10β27以上からになります。秀丸メールのバージョンが古いとうまく動きません。


message dllfuncstr("CurrentDate", "YYYY/MM/DD");
message dllfuncstr("CurrentDate", "平成 Y年 M月 D日");

戻る