1<!-- 2//_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ 3//_/ 4//_/ CopyRight(C) K.Tsunoda(AddinBox) 2001 All Rights Reserved. 5//_/ ( http://www.h3.dion.ne.jp/~sakatsu/index.htm ) 6//_/ 7//_/ ãã®ç¥æ¥å¤å®ã³ã¼ãã¯ãExcel:kt颿°ã¢ãã¤ã³ãã§ä½¿ç¨ãã¦ãã 8//_/ VBAãã¯ãã[JavaScript]ã«ç§»æ¤ãããã®ã§ãã 9//_/ ãã®é¢æ°ã§ã¯ãï¼ï¼ï¼ï¼å¹´æ½è¡ã®æ¹æ£ç¥æ¥æ³(å±±ã®æ¥)ã¾ã§ã 10//_/ ãµãã¼ããã¦ãã¾ãã 11//_/ 12//_/ (*1)ãã®ã³ã¼ããå¼ç¨ããã«å½ãã£ã¦ã¯ãå¿ ããã®ã³ã¡ã³ãã 13//_/ ä¸ç·ã«å¼ç¨ããäºã¨ãã¾ãã 14//_/ (*2)ä»ãµã¤ãä¸ã§æ¬ãã¯ããç´æ¥å¼ç¨ããäºã¯ããé æ ®é¡ãã¾ãã 15//_/ ã http://www.h3.dion.ne.jp/~sakatsu/holiday_logic.htm ã 16//_/ ã¸ã®ãªã³ã¯ã«ããç´¹ä»ã§å¯¾å¿ãã¦ä¸ããã 17//_/ (*3)[ktHolidayName]ã¨ãã颿°åãã®ãã®ã¯ãåèªã®ç°å¢ã« 18//_/ ãããå½åè¦åã«æ²¿ã£ã¦å¤æ´ãã¦ãæ§ãã¾ããã 19//_/ 20//_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ 21// 22// 2008/10/29 夿°ã®varæå®ãç¡ããåºå夿°æ±ãã«ãªã£ã¦ããã®ãä¿®æ£ãã¾ããã 23// 24// 2014/5/29 ãå±±ã®æ¥ãã®ç¥æ¥æ³æ¹æ£ 25 26var MONDAY = 1; 27var TUESDAY = 2; 28var WEDNESDAY = 3; 29 30// JavaScriptã§æ±ããæ¥ä»ã¯1970/1/1ï½ã®ã¿ 31//var cstImplementTheLawOfHoliday = new Date("1948/7/20"); // ç¥æ¥æ³æ½è¡ 32//var cstAkihitoKekkon = new Date("1959/4/10"); // æä»è¦ªçã®çµå©ã®å 33var cstShowaTaiso = new Date("1989/2/24"); // æå天ç大åªã®ç¤¼ 34var cstNorihitoKekkon = new Date("1993/6/9"); // å¾³ä»è¦ªçã®çµå©ã®å 35var cstSokuireiseiden = new Date("1990/11/12"); // å³ä½ç¤¼æ£æ®¿ã®å 36var cstImplementHoliday = new Date("1973/4/12"); // æ¯æ¿ä¼æ¥æ½è¡ 37 38// [prmDate]ã«ã¯ "yyyy/m/d"å½¢å¼ã®æ¥ä»æååãæ¸¡ã 39function ktHolidayName(prmDate) 40{ 41 var MyDate = new Date(prmDate); 42 var HolidayName = prvHolidayChk(MyDate); 43 var YesterDay; 44 var HolidayName_ret; 45 46 if (HolidayName == "") { 47 if (MyDate.getDay() == MONDAY) { 48 // ææä»¥å¤ã¯æ¯æ¿ä¼æ¥å¤å®ä¸è¦ 49 // 5/6(ç«,æ°´)ã®å¤å®ã¯prvHolidayChkã§å¦çæ¸ 50 // 5/6(æ)ã¯ããã§å¤å®ãã 51 if (MyDate.getTime() >= cstImplementHoliday.getTime()) { 52 YesterDay = new Date(MyDate.getFullYear(), 53 MyDate.getMonth(),(MyDate.getDate()-1)); 54 HolidayName = prvHolidayChk(YesterDay); 55 if (HolidayName != "") { 56 HolidayName_ret = "æ¯æ¿ä¼æ¥"; 57 } else { 58 HolidayName_ret = ""; 59 } 60 } else { 61 HolidayName_ret = ""; 62 } 63 } else { 64 HolidayName_ret = ""; 65 } 66 } else { 67 HolidayName_ret = HolidayName; 68 } 69 70 return HolidayName_ret; 71} 72 73//=============================================================== 74 75function prvHolidayChk(MyDate) 76{ 77 var MyYear = MyDate.getFullYear(); 78 var MyMonth = MyDate.getMonth() + 1; // MyMonth:1ï½12 79 var MyDay = MyDate.getDate(); 80 var NumberOfWeek; 81 var MyAutumnEquinox; 82 83 var Result = ""; 84 85// JavaScriptã§æ±ããæ¥ä»ã¯1970/1/1ï½ã®ã¿ã§ç¥æ¥æ³æ½è¡å¾ãªã®ã§ä¸è¨ã¯ä¸è¦ 86// if (MyDate.getTime() < cstImplementTheLawOfHoliday.getTime()) { 87// ããreturn ""; // ç¥æ¥æ³æ½è¡(1948/7/20)以å 88// } else; 89 90 switch (MyMonth) { 91// ï¼æ // 92 case 1: 93 if (MyDay == 1) { 94 Result = "å æ¥"; 95 } else { 96 if (MyYear >= 2000) { 97 NumberOfWeek = Math.floor((MyDay - 1) / 7) + 1; 98 if ((NumberOfWeek == 2) && (MyDate.getDay() == MONDAY)) { 99 Result = "æäººã®æ¥"; 100 } else; 101 } else { 102 if (MyDay == 15) { 103 Result = "æäººã®æ¥"; 104 } else; 105 } 106 } 107 break; 108// ï¼æ // 109 case 2: 110 if (MyDay == 11) { 111 if (MyYear >= 1967) { 112 Result = "建å½è¨å¿µã®æ¥"; 113 } else; 114 } else { 115 if (MyDate.getTime() == cstShowaTaiso.getTime()) { 116 Result = "æå天çã®å¤§åªã®ç¤¼"; 117 } else; 118 }if (MyDay == 23) { //令å 119 if (MyYear >= 2020) { 120 Result = "天çèªçæ¥"; 121 } else; 122 } else{ 123 } 124 break; 125// ï¼æ // 126 case 3: 127 if (MyDay == prvDayOfSpringEquinox(MyYear)) { // 1948ï½2150以å¤ã¯[99] 128 Result = "æ¥åã®æ¥"; // ãè¿ãã®ã§ï½¤å¿ ãâ ã«ãªã 129 } else; 130 break; 131// ï¼æ // 132 case 4: 133 if (MyDay == 29) { 134 if (MyYear >= 2007) { 135 Result = "æåã®æ¥"; 136 } else { 137 if (MyYear >= 1989) { 138 Result = "ã¿ã©ãã®æ¥"; 139 } else { 140 Result = "天çèªçæ¥"; 141 } 142 } 143 } else { 144 // JavaScriptã§æ±ããæ¥ä»ã¯1970/1/1ï½ã®ã¿ãªã®ã§ä¸è¨ã¯ä¸è¦ 145 // if (MyDate.getTime() == cstAkihitoKekkon.getTime()) { 146 // ããResult = "ç太åæä»è¦ªçã®çµå©ã®å";ãã// (=1959/4/10) 147 // } else; 148 } 149 break; 150// ï¼æ // 151 case 5: 152 switch ( MyDay ) { 153 case 3: // ï¼æï¼æ¥ 154 Result = "æ²æ³è¨å¿µæ¥"; 155 break; 156 case 4: // ï¼æï¼æ¥ 157 if (MyYear >= 2007) { 158 Result = "ã¿ã©ãã®æ¥"; 159 } else { 160 if (MyYear >= 1986) { 161 if (MyDate.getDay() > MONDAY) { 162 // 5/4ãæ¥ææ¥ã¯ãåªã®æ¥æãï½¤æææ¥ã¯ãæ²æ³è¨å¿µæ¥ã®æ¯æ¿ä¼æ¥ã(ï½2006å¹´) 163 Result = "彿°ã®ä¼æ¥"; 164 } else; 165 } else; 166 } 167 break; 168 case 5: // ï¼æï¼æ¥ 169 Result = "ãã©ãã®æ¥"; 170 break; 171 case 6: // ï¼æï¼æ¥ 172 if (MyYear >= 2007) { 173 if ((MyDate.getDay() == TUESDAY) || (MyDate.getDay() == WEDNESDAY)) { 174 Result = "æ¯æ¿ä¼æ¥"; // [5/3,5/4ãæ¥æ]ã±ã¼ã¹ã®ã¿ãããã§å¤å® 175 } else; 176 } else; 177 break; 178 } 179 break; 180// ï¼æ // 181 case 6: 182 if (MyDate.getTime() == cstNorihitoKekkon.getTime()) { 183 Result = "ç太åå¾³ä»è¦ªçã®çµå©ã®å"; 184 } else; 185 break; 186// ï¼æ // 187 case 7: 188 if (MyYear >= 2003) { 189 NumberOfWeek = Math.floor((MyDay - 1) / 7) + 1; 190 if ((NumberOfWeek == 3) && (MyDate.getDay() == MONDAY)) { 191 Result = "æµ·ã®æ¥"; 192 } else; 193 } else { 194 if (MyYear >= 1996) { 195 if (MyDay == 20) { 196 Result = "æµ·ã®æ¥"; 197 } else; 198 } else; 199 } 200 break; 201// ï¼æ // 202 case 8: 203 //if (MyDay == 11) { 204 // if (MyYear >= 2016) { 205 // Result = "å±±ã®æ¥"; 206 // }else; 207 // } else { 208 // if (MyDay == 14) { 209 // Result = "å¤å£ä¼æ"; 210 // } else { 211 // if (MyDay == 15) { 212 // Result = "å¤å£ä¼æ"; 213 // } else; 214 // } 215 // } 216 break; 217 218// ï¼æ // 219 case 9: 220 //ç¬¬ï¼æææ¥(15ï½21)ã¨ç§åæ¥(22ï½24)ãéãªãäºã¯ãªã 221 MyAutumnEquinox = prvDayOfAutumnEquinox(MyYear); 222 if (MyDay == MyAutumnEquinox) { // 1948ï½2150以å¤ã¯[99]
223 Result = "ç§åã®æ¥"; // ãè¿ãã®ã§ï½¤å¿ ãâ ã«ãªã 224 } else { 225 if (MyYear >= 2003) { 226 NumberOfWeek = Math.floor((MyDay - 1) / 7) + 1; 227 if ((NumberOfWeek == 3) && (MyDate.getDay() == MONDAY)) { 228 Result = "æ¬èã®æ¥"; 229 } else { 230 if (MyDate.getDay() == TUESDAY) { 231 if (MyDay == (MyAutumnEquinox - 1)) { 232 Result = "彿°ã®ä¼æ¥"; 233 } else; 234 } else; 235 } 236 } else { 237 if (MyYear >= 1966) { 238 if (MyDay == 15) { 239 Result = "æ¬èã®æ¥"; 240 } else; 241 } else; 242 } 243 } 244 break; 245// ï¼ï¼æ // 246 case 10: 247 //if (MyYear >= 2000) { 248 // NumberOfWeek = Math.floor(( MyDay - 1) / 7) + 1; 249 // if ((NumberOfWeek == 2) && (MyDate.getDay() == MONDAY)) { 250 // Result = "ä½è²ã®æ¥"; 251 // } else; 252 // } else { 253 // if (MyYear >= 1966) { 254 // if (MyDay == 10) { 255 // Result = "ä½è²ã®æ¥"; 256 // } else; 257 // } else; 258 //} 259 break; 260// ï¼ï¼æ // 261 case 11: 262 if (MyDay == 3) { 263 Result = "æåã®æ¥"; 264 } else { 265 if (MyDay == 23) { 266 Result = "å¤å´æè¬ã®æ¥"; 267 } else { 268 if (MyDate.getTime() == cstSokuireiseiden.getTime()) { 269 Result = "å³ä½ç¤¼æ£æ®¿ã®å"; 270 } else; 271 } 272 } 273 break; 274// ï¼ï¼æ // 275// case 12: 276// if (MyDay == 23) { 277// if (MyYear >= 1989) { 278// Result = "天çèªçæ¥"; 279// } else; 280// } else; 281// if (MyDay == 30) { 282// Result = "ä¼è¨ºæ¥"; 283// } else; 284// 285// break; 286 } 287 288 return Result; 289} 290 291//=================================================================== 292// æ¥å/ç§åæ¥ã®ç¥ç®å¼ã¯ 293// ãæµ·ä¸ä¿å®åºæ°´è·¯é¨ æ¦è¨ç®ç ç©¶ä¼ç·¨ æ°ããã¿ä¾¿å©å¸³ã 294// ã§ç´¹ä»ããã¦ããå¼ã§ãã 295function prvDayOfSpringEquinox(MyYear) 296{ 297 var SpringEquinox_ret; 298 299 if (MyYear <= 1947) { 300 SpringEquinox_ret = 99; //ç¥æ¥æ³æ½è¡å 301 } else { 302 if (MyYear <= 1979) { 303 // Math.floor 颿°ã¯[VBAã®Int颿°]ã«ç¸å½ 304 SpringEquinox_ret = Math.floor(20.8357 + 305 (0.242194 * (MyYear - 1980)) - Math.floor((MyYear - 1980) / 4)); 306 } else { 307 if (MyYear <= 2099) { 308 SpringEquinox_ret = Math.floor(20.8431 + 309 (0.242194 * (MyYear - 1980)) - Math.floor((MyYear - 1980) / 4)); 310 } else { 311 if (MyYear <= 2150) { 312 SpringEquinox_ret = Math.floor(21.851 + 313 (0.242194 * (MyYear - 1980)) - Math.floor((MyYear - 1980) / 4)); 314 } else { 315 SpringEquinox_ret = 99; //2151年以éã¯ç¥ç®å¼ãç¡ãã®ã§ä¸æ 316 } 317 } 318 } 319 } 320 return SpringEquinox_ret; 321} 322 323//===================================================================== 324function prvDayOfAutumnEquinox(MyYear) 325{ 326 var AutumnEquinox_ret; 327 328 if (MyYear <= 1947) { 329 AutumnEquinox_ret = 99; //ç¥æ¥æ³æ½è¡å 330 } else { 331 if (MyYear <= 1979) { 332 // Math.floor 颿°ã¯[VBAã®Int颿°]ã«ç¸å½ 333 AutumnEquinox_ret = Math.floor(23.2588 + 334 (0.242194 * (MyYear - 1980)) - Math.floor((MyYear - 1980) / 4)); 335 } else { 336 if (MyYear <= 2099) { 337 AutumnEquinox_ret = Math.floor(23.2488 + 338 (0.242194 * (MyYear - 1980)) - Math.floor((MyYear - 1980) / 4)); 339 } else { 340 if (MyYear <= 2150) { 341 AutumnEquinox_ret = Math.floor(24.2488 + 342 (0.242194 * (MyYear - 1980)) - Math.floor((MyYear - 1980) / 4)); 343 } else { 344 AutumnEquinox_ret = 99; //2151年以éã¯ç¥ç®å¼ãç¡ãã®ã§ä¸æ 345 } 346 } 347 } 348 } 349 return AutumnEquinox_ret; 350} 351 352//_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ 353//_/ CopyRight(C) K.Tsunoda(AddinBox) 2001 All Rights Reserved. 354//_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ 355 356 357//-->
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.