
Хоча це можна було б виправити, набагато простіше дозволити помилковому 1900 року жити в Excel як високосному.
Як і багато людей, мій досвід роботи з Excel здебільшого поверхневий, попри те, що це надзвичайно потужна програма. Я використовував її для відстеження витрат і створення деяких діаграм для сайту, але на цьому мої знання закінчуються.
Цілком зрозуміло, що така складна програма має безліч ресурсів для підтримки правильної роботи, і перегляд розділу Excel на сторінках усунення несправностей Microsoft 365 викликає тремтіння.
Article continues below
Проблема високосного року в Excel має коріння в запуску Lotus 1-2-3 у 1983 році

Lotus 1-2-3 вийшов у 1983 році для IBM PC під керуванням MS-DOS і швидко став надзвичайно популярним серед професіоналів. Як ви, напевно, здогадалися, він вважав 1900 рік високосним, що “не завдало шкоди майже всім обчисленням дат”.
Коли Microsoft випустила Excel через кілька років як конкурента Lotus 1-2-3, вона також мала помилку з високосним 1900 роком. Це було питання сумісності між двома програмами, оскільки Microsoft хотіла забезпечити користувачам можливість переносити аркуші Lotus 1-2-3 в Excel без проблем.
Ця проблема залишається і досі присутня в найновішій версії Excel для Microsoft 365.
Як пояснює Microsoft, “технічно можливо виправити цю поведінку, щоб поточні версії Microsoft Excel не вважали 1900 рік високосним”. Однак вона не вважає переваги, що випливають з цього, вартими недоліків.
Виправлення помилки високосного року призведе до зменшення дат на один день для “майже всіх дат” у аркушах та інших документах. Функція WEEKDAY (День тижня) перестане працювати належним чином. І сумісність серійних дат з Excel та іншими подібними програмами також буде порушена.
Залишити як є? Ну, лише функція WEEKDAY повертатиме неправильні дати, якщо ви працюєте зі значеннями до 1 березня 1900 року.
Вирішення проблеми високосного року в Excel у 1992 році

Як згадувалося в дописі Джоела Спольскі від 2006 року, він звернувся до візіонера Microsoft Еда Фріза у 1992 році після виявлення проблеми безпосередньо перед представленням своєї роботи на розгляд Біллу Гейтсу.
Фріз зазначив, що ця помилка в Lotus “ймовірно, була навмисною”, оскільки програма мала вміщуватися в 640 КБ пам’яті. Як пояснив Фріз багато років тому:
“Якщо ігнорувати 1900 рік, то можна визначити, чи є певний рік високосним, просто перевіривши, чи нульові останні два біти. Це дуже швидко і легко. Схоже, розробники Lotus вирішили, що не має значення помилитися щодо цих двох місяців у далекому минулому”.
Ось так. Наступного разу, коли я подумаю, що невеличкий компроміс не матиме великого значення, я обов’язково згадаю цю історію.

Приєднуйтесь до нас на Reddit у r/WindowsCentral, щоб поділитися своїми думками та обговорити останні новини, огляди та багато іншого.
Що це означає для користувачів: Microsoft Excel, як і раніше, підтримує застарілу помилку, яка вважає 1900 рік високосним. Ця помилка, успадкована від Lotus 1-2-3, була навмисно збережена для забезпечення сумісності. Хоча це може призвести до незначних неточностей у розрахунках дат для подій до 1 березня 1900 року (зокрема, функція WEEKDAY), виправлення цієї помилки могло б порушити роботу існуючих аркушів та програм. Таким чином, для більшості користувачів, які не працюють з даними початку 20-го століття, ця особливість Excel не вплине на повсякденну роботу.
Оригінал статті: www.windowscentral.com
