|
> > # ただ 毎月、アカウント増えちゃうのかな?
> 手動でアカウントを削除していただくということですよね。月替わりに更新するよ
> うに修正できなくはないですけど。
月が変わってから実行すると、前のカレンダーを削除して、新しいカレンダーを作
ります。(先のマクロでカレンダーを作った場合は、このマクロも一度実行しておい
てください)
// フォルダペインにカレンダー
// calendar.mac
loaddll "tkinfo.dll";
$ini = dllfuncstr("HomeDir") + "calendar.ini";
$ThisMonth = "◆ " + year + "年 " + month + "月";
if (existfile($ini)) {
$RcdMonth = getinistr($ini, "calendar", "1");
if (dllfunc("SelectFolder", $RcdMonth, "")) {
if ($ThisMonth == $RcdMonth) endmacro;
#n = dllfunc("SetAutoPushTimer", 0, "yes");
#n = sendmessage(hidemaruhandle(0), 0x0111, 40025, 0);
}
} else {
if (dllfunc("SelectFolder", $ThisMonth, "")) {
writeinistr $ini, "calendar", "1", $ThisMonth;
endmacro;
}
}
#n = dllfunc("MakeAccount", $ThisMonth);
#n = dllfunc("MakeFolder", " 日 月 火 水 木 金 土");
#year = val(year);
#month = val(month);
if (#month < 3) #year = #year - 1;
#first = (#year + (#year / 4) - (#year / 100) + (#year / 400)
+ val(midstr("032503514624", #month - 1, 1)) + 1) % 7;
#i = 0; $week = "";
while (#i < #first) {
$week = $week + " ";
#i = #i + 1;
}
#days = val(midstr("312831303130313130313031", (#month - 1) * 2, 2));
if ((#month == 2) &&
((#year % 4 == 0) && ((#year % 100 != 0) || (#year % 400 == 0)))) {
#days = #days + 1;
}
#i = 1;
while (#i <= #days) {
$week = $week + rightstr(" " + str(#i), 3);
#first = #first + 1;
if (!(#first % 7)) {
#n = dllfunc("MakeFolder", $week);
$week = "";
}
#i = #i + 1;
}
if ($week != "") #n = dllfunc("MakeFolder", $week);
writeinistr $ini, "calendar", "1", $ThisMonth;
endmacro;
|
|