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