Microsoft Excel

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Microsoft Excel (Windows)
Excel logo.png
Тип

Табличный процессор

Разработчик

Microsoft

Операционная система

Microsoft Windows

Последняя версия

15.0.4649.1003 (13 октябрь 2014)

Лицензия

Microsoft EULA

Сайт

office.microsoft.com

Microsoft Excel (Windows) на Викискладе
Microsoft Excel (Mac OS X)
Excel mac 2008 icon.png
Excel 2008 mac os x.jpg
Microsoft Excel 2008
Тип

Табличный процессор

Разработчик

Microsoft

Операционная система

Mac OS X

Последняя версия

14.1.0 Build 110310 (2011) (12 апреля 2011)

Лицензия

Microsoft EULA

Сайт

office.microsoft.com

Microsoft Excel (Mac OS X) на Викискладе

Microsoft Excel (также иногда называется Microsoft Office Excel[1]) — программа для работы с электронными таблицами, созданная корпорацией Microsoft для Microsoft Windows, Windows NT и Mac OS. Она предоставляет возможности экономико-статистических расчетов, графические инструменты и, за исключением Excel 2008 под Mac OS X, язык макропрограммирования VBA (Visual Basic for Application). Microsoft Excel входит в состав Microsoft Office и на сегодняшний день Excel является одним из наиболее популярных приложений в мире.

История[править | править вики-текст]

В 1982 году Microsoft запустила на рынок свой первый электронный табличный процессор Multiplan, который был очень популярен на CP/M системах, но на MS-DOS системах он уступал Lotus 1-2-3. Первая версия Excel предназначалась для Mac и была выпущена в 1985 году, а первая версия для Windows была выпущена в ноябре 1987 года. Lotus не торопилась выпускать 1-2-3 под Windows, и Excel с 1988 года начала обходить по продажам 1-2-3, что в конечном итоге помогло Microsoft достичь позиций ведущего разработчика программного обеспечения. Microsoft укрепляла свое преимущество с выпуском каждой новой версии, что имело место примерно каждые два года. Текущая версия для платформы Windows — Excel 15, также известная как Microsoft Office Excel 2013. Текущая версия для платформы Mac OS X — Microsoft Excel 2011.

В начале своего пути Excel стал причиной иска о товарном знаке от другой компании, уже продававшей пакет программ под названием «Excel». В результате спора Microsoft была обязана использовать название «Microsoft Excel» во всех своих официальных пресс-релизах и юридических документах. Однако со временем эта практика была позабыта, и Microsoft окончательно устранила проблему, приобретя товарный знак другой программы. Microsoft также решила использовать буквы XL как сокращённое название программы: иконка Windows-программы состоит из стилизованного изображения этих двух букв, а расширение файлов по умолчанию в Excel — .xls. В сравнении с первыми табличными процессорами Excel представляет множество новых функций пользовательского интерфейса, но суть остается прежней: как и в программе-родоначальнике, VisiCalc, организованные в строки и столбцы клетки-ячейки могут содержать данные или формулы с относительными или абсолютными ссылками на другие клетки.

Excel был первым табличным процессором, позволявшим пользователю менять внешний вид таблицы на экране: шрифты, символы и внешний вид ячеек. Он также первым представил метод умного пересчёта ячеек — обновления только ячеек, зависящих от изменённых ячеек: раньше табличные процессоры пересчитывали все ячейки; это делалось либо после каждого изменения (что на больших таблицах долго), либо по команде пользователя (что могло вводить пользователя в заблуждение непересчитанными значениями).

Будучи впервые объединёнными в Microsoft Office в 1993 году, Microsoft Word и Microsoft PowerPoint получили новый графический интерфейс для соответствия Excel, главного стимула модернизации ПК в то время.

Начиная с 1993 года, в состав Excel входит Visual Basic для приложений (VBA), язык программирования, основанный на Visual Basic, позволяющий автоматизировать задачи Excel. VBA является мощным дополнением к приложению и в более поздних версиях Excel доступна полнофункциональная интегрированная среда разработки. Можно создать VBA-код, повторяющий действия пользователя и таким образом автоматизировать простые задачи. VBA позволяет создавать формы для общения с пользователем. Язык поддерживает использование (но не создание) DLL от ActiveX; более поздние версии позволяют использовать элементы объектно-ориентированного программирования.

Функциональность VBA делала Excel легкой мишенью для макровирусов. И это было серьёзной проблемой до тех пор, пока антивирусные продукты не научились обнаруживать их. Фирма Microsoft, с опозданием приняв меры для уменьшения риска, добавила возможность выбора режима безопасности:

  • полностью отключить макросы
  • включить макросы при открытии документа
  • доверять всем макросам, подписанным с использованием надёжных сертификатов.

Версии Excel от 5.0 до 9.0 содержат различные «пасхальные яйца», хотя, начиная с версии 10 Microsoft начала принимать меры по их ликвидации.

Версии[править | править вики-текст]

Версии для Windows и Windows NT[править | править вики-текст]

Excel 97 (8.0) на Windows XP
Microsoft Office Excel 2003
  • 1988 год — Excel 2.0 для Windows
  • 1990 год — Excel 3.0
  • 1992 год — Excel 4.0
  • 1993 год — Excel 5.0 (Office 4.2 и 4.3, также есть 32-битная версия только для Windows NT)
  • 1995 год — Excel 7 для Windows 95 (включён в пакет Microsoft Office 95)
  • 1997 год — Excel 97 (включён в пакет Microsoft Office 97)
  • 1999 год — Excel 2000 (9) — Microsoft Office 2000
  • 2001 год — Excel 2002 (10) — Microsoft Office XP
  • 2003 год — Excel 2003 (11) — Microsoft Office 2003
  • 2007 год — Excel 2007 (12) — Microsoft Office 2007
  • 2010 год — Excel 2010 (14) — Microsoft Office 2010
  • 2013 год — Excel 2013 (15) — Microsoft Office 2013
  • 2014 год — Excel 2014 (16) — Microsoft Office 2014
  • Замечание: Версия 1.0 не использовалась, чтобы избежать путаницы с продуктами Apple
  • Замечание: Excel 6.0 не существует, так как версия Windows 95 поставлялась с Word 7. Все программы Office 95 и Office 4.x использовали OLE 2.0 (автоматическая передача данных между различными программами), и Excel 7 должен был показывать, что он соответствует Word 7.
  • Замечание: Версия 13.0 была пропущена по причине Трискаидекафобии . Excel 2010 имеет внутреннюю версию 14.0.

Версии для Macintosh[править | править вики-текст]

  • 1985 год — Excel 1.0
  • 1988 год — Excel 1.5
  • 1989 год — Excel 2.2
  • 1990 год — Excel 3.0
  • 1992 год — Excel 4.0
  • 1993 год — Excel 5.0
  • 1998 год — Excel 8.0 (Office '98)
  • 2000 год — Excel 9.0 (Office 2001)
  • 2001 год — Excel 10.0 (Office v. X)
  • 2004 год — Excel 11.0 (Office 2004)
  • 2008 год — Excel 12.0 (Office 2008)
  • 2011 год — Excel 14.0 (Office 2011)

Версии для OS/2[править | править вики-текст]

  • 1989 год — Excel 2.2
  • 1990 год — Excel 2.3
  • 1991 год — Excel 3.0

Версии Excel до 7.0 были ограничены в возможностях хранения данных, вмещая до 16 384 (214) строк. Версии 8.0—11.0 могли справиться с 65 536 (216) строк и 256 колонками (28). Версии 12.0 и 14.0 обрабатывают до 1 048 576 (220) строк и 16 384 (214) колонок.[2]

Форматы файлов[править | править вики-текст]

В Microsoft Excel вплоть до 2003 версии включительно, использовался свой собственный бинарный формат файлов (BIFF) в качестве основного.[3] Excel 2007 использует Microsoft Office Open XML в качестве своего основного формата.

Несмотря на то, что Excel 2007 поддерживает и направлен на использование новых XML-форматов в качестве основных, он по-прежнему совместим с традиционными бинарными форматами. Кроме того, большинство версий Microsoft Excel могут читать CSV, DBF, SYLK, DIF и другие форматы.

Office Open XML[править | править вики-текст]

Microsoft Excel 2007, наряду с другими продуктами Microsoft Office 2007, вводит множество новых форматов файлов. Они являются частью Office Open XML (OOXML) спецификации.

Новые форматы Excel 2007
Формат Расширение Примечания
Рабочая книга Excel .xlsx Стандартный формат рабочих книг Excel 2007. В действительности это сжатый ZIP-архив каталога XML документов. Является заменой бывшего бинарного формата .xls, хотя и не поддерживает макросы по соображениям безопасности.
Рабочая книга Excel с макросами .xlsm Та же рабочая книга Excel, но с поддержкой макросов.
Бинарная рабочая книга Excel .xlsb Та же рабочая книга Excel с макросами, но хранящая информацию в бинарном формате, открывая документы быстрее чем XML. В особенности часто используется для очень больших документов с десятками тысяч строк и/или сотнями колонок.
Шаблон Excel с макросами .xltm Шаблон, созданный как основа для рабочих книг, включена поддержка макросов. Заменяет старый формат .xlt.
Надстройка Excel .xlam Надстройка Excel, направленная на добавление дополнительных функциональных возможностей и инструментов.

Экспорт и перемещение таблиц[править | править вики-текст]

API позволяет открывать таблицы Excel в ряде других приложений. Это включает в себя открытие документов Excel на веб-страницах с помощью ActiveX или таких плагинов, как Adobe Flash Player. Проект Apache POI представляет Java-библиотеки для чтения и записи электронных таблиц Excel. Также предпринимались попытки копировать таблицы Excel в веб-приложения с использованием разделённых запятыми значений (CSV).

Программирование[править | править вики-текст]

Ценной возможностью Excel является возможность писать код на основе Visual Basic для приложений (VBA). Этот код пишется с использованием отдельного от таблиц редактора. Управление электронной таблицей осуществляется посредством объектно-ориентированной модели кода и данных. С помощью этого кода данные входных таблиц будут мгновенно обрабатываться и отображаться в таблицах и диаграммах (графиках). Таблица становится интерфейсом кода, позволяя легко работать изменять его и управлять расчётами.

Парольная защита Microsoft Excel[править | править вики-текст]

Защита Microsoft Excel предоставляет несколько типов различных паролей:

  • пароль для открытия документа[4]
  • пароль для изменения документа[5]
  • пароль для защиты листа
  • пароль для защиты книги
  • пароль для защиты общей книги[6]
  • пароль для защиты кода VBA

Все пароли, кроме пароля для открытия документа, можно удалить мгновенно, вне зависимости от версии Microsoft Excel, в которой был создан документ. Эти типы паролей в первую очередь служат для коллективной работы над документом. При их использовании документ не шифруется, а в документе сохраняется хэш от установленного пароля. Хотя при использовании пароля для защиты книги документ шифруется на известном пароле «VelvetSweatshop», это не добавляет документу дополнительной защиты. Единственным типом пароля который может помешать злоумышленнику получить доступ к документу является «пароль для открытия», но криптостойкость такой защиты сильно зависит от версии Microsoft Excel, в которой был создан документ.

В Microsoft Excel версии 95 и ранее, «пароль на открытие» преобразовывается в 16-битный ключ, который взламывается мгновенно. В Microsoft Excel 97 / 2000 пароль преобразовывался уже в 40-битный ключ, который на современном оборудовании также может быть взломан очень быстро. К тому же программы для взлома паролей могут перебирать сотни тысяч паролей в секунду, что позволяет не только расшифровать документ, но и найти оригинальный пароль. В Microsoft Excel 2003 / XP ситуация немного улучшилась — пользователь может выбрать практический любой алгоритм шифрования, доступный в системе (CryptoServiceProvider). Но по умолчанию осталась все та же защита Microsoft Excel 97 / 2000.[7] Для пользователей, привыкшим доверять поведению программ по умолчанию, это означает отсутствие стойкой защиты на их документы.

Ситуация кардинально изменилась в Microsoft Excel 2007 — для шифрования стал использоваться современный алгоритм AES с ключом в 128 бит, а для получения ключа применяться 50000 кратное использование хэш-функции SHA1, что уменьшило скорость перебора до сотен паролей в секунду.[8] В Microsoft Excel стойкость защиты по умолчанию была увеличена ещё в 2 раза, благодаря применению уже 100000 кратного SHA1 преобразования пароля в ключ. Вывод: на данный момент стойкую защиту обеспечивает только документы, сохраненные в формате Office 2007 / 2010 с установленным на них стойким «паролем на открытие».

Критика[править | править вики-текст]

Общая критика табличных процессоров применима и к Microsoft Excel. Специфичные предметы критики в Excel — это точность, проблемы с датами и ошибки отображения Excel 2007.

Точность[править | править вики-текст]

Из-за того, что Excel работает на основе расчетов с плавающей запятой, статистическая точность Excel подвергается критике.[9][10][11][12] Сторонники Excel заявляют в ответ, эти ошибки проявляются лишь в особых условиях специально подобранных исходных данных, которые затрагивают относительно небольшое число пользователей, и с низкой вероятностью могут встретиться на практике. Для версий 97, 2000, 2002 зафиксированы ошибки при выполнении функции MOD (деление с остатком) при определённых аргументах, где функция вместо результата возвращает ошибку #NUM!.[13]

Проблемы с датой[править | править вики-текст]

В версиях Excel до 2007 включительно 1900 год ошибочно считался високосным.[14][15] Ошибка возникла в Lotus 1-2-3 и была намеренно внесена в Excel для совместимости и поддерживалась для обратной совместимости.[16][17]

Ошибки отображения Excel[править | править вики-текст]

Скриншот Microsoft Excel 2007, показывающий ошибку отображения 65535

22 сентября 2007 года было сообщено[18], что в определённых ситуациях Excel 2007 будет показывать неправильные результаты. В частности, для тех пар чисел, чье произведение равно 65535 (например, 850 и 77,1), Excel отобразит в качестве итога 100000. Это происходит с примерно 14,5 % таких пар.[19] Кроме того, если к результату добавить единицу, Excel выведет итог 100001. Однако, если вычесть из итога единицу, на дисплее отобразится правильный результат 65534. (Также, если итог умножить или разделить на 2, будут отображены 131070 и 32767,5 соответственно.)

Microsoft сообщила в блоге Microsoft Excel[20], что проблема существует в отображении шести конкретных значений с плавающей запятой между 65534,99999999995 и 65535 и шести значений между 65535,99999999995 и 65536 (не включая границ). Любые расчеты, результат которых равен одному из двенадцати значений, будут отображаться неправильно. Фактические данные, хранящиеся и передающиеся в другие ячейки, верны, неверно лишь отображение значения. Ошибка появилась в Excel 2007 и не существует в предыдущих версиях. 9 октября 2007 года Microsoft выпустила патч, исправляющий проблему.[21] Он вошёл и в состав исправлений Service Pack 1.

Примечания[править | править вики-текст]

  1. Обзор Microsoft Office Excel 2007
  2. Возросшие возможности Excel 2007
  3. How to extract information from Office files by using Office file formats and schemas
  4. Шифрование документа и задание пароля для его открытия
  5. Задание пароля для изменения документа
  6. Защита листа или книги паролем
  7. Парольная защита документов Microsoft Office
  8. Office 2007: новый формат и новая защита
  9. Using Excel for Data Analysis
  10. Reliability of Statistical Procedures in Excel
  11. http://www.practicalstats.com/Pages/excelstats.html
  12. Faculty of Engineering and Computing. Проверено 2 марта 2013. Архивировано из первоисточника 10 марта 2013.
  13. XL: MOD() Function Returns #NUM! Error Value
  14. Days of the week before March 1, 1900 are incorrect in Excel
  15. Excel 2000 incorrectly assumes that the year 1900 is a leap year
  16. My First BillG Review — Joel on Software
  17. Matthew MacDonald. Excel 2007: the missing manual O’Reilly, 2006. ISBN 0-596-52759-4
  18. Bug in Excel 2007 — microsoft.public.excel | Google Groups
  19. Excel 2007 показывает неверные ответы в простых вычислениях VeroBlog
  20. Обновление вычислений Блог команды Microsoft Excel
  21. Обновление вычислений (патч доступен) Блог команды Microsoft Excel

Ссылки[править | править вики-текст]

Литература[править | править вики-текст]