// 月末エントリー禁止フィルター //月末エントリー禁止 if (!Monthend()) return(0); bool Monthend() { int MON = TimeMonth(TimeCurrent()); // 何月? int DAY = TimeDay(TimeCurrent()); // 何日? int WEEK = TimeDayOfWeek(TimeCurrent()); // 何曜日? int YEAR = TimeYear(TimeCurrent()); // 何年? // 月末の1日のみエントリー禁止 if (MON != 2 && MON != 4 && MON != 6 && MON != 9 && MON != 11) { if (DAY == 31 && WEEK >= 1 && WEEK <= 5) return(false); if (DAY >= 29 && WEEK == 5) return(false); } else if (MON == 4 || MON == 6 || MON == 9 || MON == 11) { if (DAY == 30 && WEEK >= 1 && WEEK <= 5) return(false); if (DAY >= 28 && WEEK == 5) return(false); } else if (MON == 2 && (MathMod(YEAR, 4) != 0)) { if (DAY == 28 && WEEK >= 1 && WEEK <= 5) return(false); if (DAY >= 26 && WEEK == 5) return(false); } else if (MON == 2 && (MathMod(YEAR, 4) == 0)) { if (DAY == 29 && WEEK >= 1 && WEEK <= 5) return(false); if (DAY >= 27 && WEEK == 5) return(false); } // 月末の2日前からエントリー禁止 /*if (MON != 2 && MON != 4 && MON != 6 && MON != 9 && MON != 11) { if (DAY == 31 && WEEK >= 1 && WEEK <= 5) return(false); if (DAY >= 28 && WEEK >= 4) return(false); } else if (MON == 4 || MON == 6 || MON == 9 || MON == 11) { if (DAY == 30 && WEEK >= 1 && WEEK <= 5) return(false); if (DAY >= 27 && WEEK >= 4) return(false); } else if (MON == 2 && (MathMod(YEAR, 4) != 0)) { if (DAY == 28 && WEEK >= 1 && WEEK <= 5) return(false); if (DAY >= 25 && WEEK >= 4) return(false); } else if (MON == 2 && (MathMod(YEAR, 4) == 0)) { if (DAY == 29 && WEEK >= 1 && WEEK <= 5) return(false); if (DAY >= 26 && WEEK >= 4) return(false); } */ return(true); }