> 1899/12/30が0のシリアル値
まあ実質的にはそれでも間違いでは無いけど
エクセルは一応 1900/01/01 が 1
でも 1900/02/29 が存在するバグ仕様のせいで 1900/03/01 以降 +1 になってしまい 1899/12/31 が 1 のような値になってしまう
1900/03/01 以降の値しか無いなら一律で構わないけれど全てに対応させるには以下の3種必要
・1900/01/01 〜 1900/02/28
・1900/02/29
・1900/03/01 〜
2/29だけ例外で扱って残りは03/01〜の時、通日をフラグで-1する感じかな
0/3/1 を 0 とした値に直して %1 に与えたら以下の式で年月日を出せる
set /a "R=(R4=(R1oo=(R4oo=%~1%%146097)%%36524)%%1461)%%365, Y4oo=%~1/146097, Y1oo=R4oo/36524, Y4=R1oo/1461, Y1=R4/365, L=(Y1oo|Y1)/4, R+=L*365, k=(R*5+2)/153, d=R+1-(306*k+4)/10, f=k/10, m=k+3-f*12, y=400*Y4oo+100*Y1oo+4*Y4+Y1-L+f"
echo %y% / %m% / %d%