Microsoft Excel — это редактор электронных таблиц, разработанный корпорацией Microsoft для Windows , macOS , Android , iOS и iPadOS . Он включает в себя возможности вычислений , графические инструменты, сводные таблицы и язык программирования макросов Visual Basic for Applications (VBA). Excel является частью пакета программного обеспечения Microsoft 365 .
Microsoft Excel обладает основными функциями всех электронных таблиц, [10] используя сетку ячеек, организованных в пронумерованные строки и столбцы с буквенными названиями, для организации манипуляций с данными, таких как арифметические операции. Он имеет ряд предоставленных функций для удовлетворения статистических, инженерных и финансовых потребностей. Кроме того, он может отображать данные в виде линейных графиков, гистограмм и диаграмм, а также с очень ограниченным трехмерным графическим отображением. Он позволяет секционировать данные для просмотра их зависимостей от различных факторов для разных перспектив (используя сводные таблицы и менеджер сценариев ). [11] Сводная таблица — это инструмент для анализа данных . Он делает это путем упрощения больших наборов данных с помощью полей сводной таблицы. Он имеет программный аспект, Visual Basic для приложений , позволяющий пользователю использовать широкий спектр численных методов, например, для решения дифференциальных уравнений математической физики, [12] [13] а затем сообщать результаты обратно в электронную таблицу. Он также имеет множество интерактивных функций, позволяющих создавать пользовательские интерфейсы, которые могут полностью скрыть электронную таблицу от пользователя, поэтому электронная таблица представляет себя как так называемое приложение или систему поддержки принятия решений (DSS) через специально разработанный пользовательский интерфейс, например, анализатор акций, [14] или в целом как инструмент проектирования, который задает пользователю вопросы и предоставляет ответы и отчеты. [15] [16] В более сложной реализации приложение Excel может автоматически опрашивать внешние базы данных и измерительные приборы, используя график обновлений, [17] анализировать результаты, создавать отчеты Word или слайд-шоу PowerPoint и регулярно отправлять эти презентации по электронной почте списку участников.
Microsoft допускает ряд дополнительных параметров командной строки для управления способом запуска Excel. [18]
Excel 2016 имеет 484 функции. [19] Из них 360 существовали до Excel 2010. Microsoft классифицирует эти функции по 14 категориям. Из 484 текущих функций 386 могут быть вызваны из VBA как методы объекта «WorksheetFunction» [20] и 44 имеют те же имена, что и функции VBA. [21]
С появлением LAMBDA Excel стал Тьюринг-полным . [22]
Версия Excel для Windows поддерживает программирование с помощью Visual Basic for Applications (VBA) от Microsoft, который является диалектом Visual Basic . Программирование с помощью VBA позволяет манипулировать электронными таблицами, что неудобно или невозможно с помощью стандартных методов работы с электронными таблицами. Программисты могут писать код напрямую, используя редактор Visual Basic (VBE), который включает окно для написания кода, отладки кода и среду организации модуля кода. Пользователь может реализовывать численные методы, а также автоматизировать такие задачи, как форматирование или организация данных в VBA [23], и руководить вычислениями, используя любые желаемые промежуточные результаты, возвращаемые в электронную таблицу.
VBA был удален из Mac Excel 2008, поскольку разработчики не верили, что своевременный выпуск позволит перенести движок VBA на Mac OS X. VBA был восстановлен в следующей версии, Mac Excel 2011, [24] хотя в сборке отсутствует поддержка объектов ActiveX , что влияет на некоторые инструменты разработчика высокого уровня. [25]
Распространенным и простым способом генерации кода VBA является использование Macro Recorder. [26] Macro Recorder записывает действия пользователя и генерирует код VBA в виде макроса. Затем эти действия можно автоматически повторять, запустив макрос. Макросы также можно связать с различными типами триггеров, такими как сочетания клавиш, кнопка команды или графика. Действия в макросе можно выполнять из этих типов триггеров или из общих параметров панели инструментов. Код VBA макроса также можно редактировать в VBE. Некоторые функции, такие как функции цикла и экранные подсказки по их собственным свойствам, а также некоторые графические элементы отображения, не могут быть записаны, но должны быть введены в модуль VBA непосредственно программистом. Опытные пользователи могут использовать пользовательские подсказки для создания интерактивной программы или реагировать на такие события, как загрузка или изменение листов.
Записанный код макроса может быть несовместим с версиями Excel. Часть кода, используемого в Excel 2010, не может использоваться в Excel 2003. Создание макроса, изменяющего цвета ячеек, и внесение изменений в другие аспекты ячеек может быть несовместимо с предыдущими версиями.
Код VBA взаимодействует с электронной таблицей через объектную модель Excel [27] , словарь, идентифицирующий объекты электронной таблицы, и набор предоставленных функций или методов , которые позволяют читать и записывать в электронную таблицу и взаимодействовать с ее пользователями (например, через настраиваемые панели инструментов или панели команд и окна сообщений ). Созданные пользователем подпрограммы VBA выполняют эти действия и работают как макросы, созданные с помощью макрорекордера, но являются более гибкими и эффективными.
Начиная с первой версии Excel поддерживал программирование макросов конечным пользователем (автоматизация повторяющихся задач) и определяемых пользователем функций (расширение встроенной библиотеки функций Excel). В ранних версиях Excel эти программы были написаны на макроязыке, операторы которого имели синтаксис формул и находились в ячейках специальных листов макросов (хранящихся с расширением файла .XLM в Windows). XLM был языком макросов по умолчанию для Excel до Excel 4.0. [28] Начиная с версии 5.0 Excel по умолчанию записывал макросы в VBA, но с версии 5.0 запись XLM все еще была разрешена в качестве опции. После версии 5.0 эта опция была прекращена. Все версии Excel, включая Excel 2021, способны запускать макрос XLM, хотя Microsoft не рекомендует их использовать. [29]
В 2023 году Microsoft объявила, что Excel будет напрямую поддерживать язык программирования Python . [30] [31] С января 2024 года Python в Excel доступен в программе Microsoft 365 Insider. [30]
Excel поддерживает диаграммы , графики или гистограммы, созданные из указанных групп ячеек. Он также поддерживает сводные диаграммы, которые позволяют напрямую связать диаграмму со сводной таблицей. Это позволяет обновлять диаграмму с помощью сводной таблицы. Созданный графический компонент может быть встроен в текущий лист или добавлен как отдельный объект.
Эти дисплеи динамически обновляются, если содержимое ячеек изменяется. Например, предположим, что важные требования к дизайну отображаются визуально; затем, в ответ на изменение пользователем пробных значений параметров, кривые, описывающие дизайн, меняют форму, а их точки пересечения смещаются, помогая выбрать лучший дизайн.
Дополнительные функции доступны с помощью надстроек . Некоторые из них поставляются с Excel, в том числе:
Версии Excel до 7.0 имели ограничение на размер наборов данных в 16 КБ (2 14 =16 384 ) строк. Версии с 8.0 по 11.0 могли обрабатывать 64К (2 16 =65 536 ) строк и 256 столбцов (2 8 как метка 'IV'). Версия 12.0 и более поздние, включая текущую версию 16.x, могут обрабатывать более 1M (2 20 =1 048 576 ) строк, и16 384 (2 14 , обозначено как столбец «XFD») столбцов. [32]
Вплоть до версии 2007 года Microsoft Excel использовал в качестве основного формата собственный двоичный формат файла, называемый Excel Binary File Format (.XLS). [33] Excel 2007 использует в качестве основного формата файла Office Open XML , формат на основе XML, который появился после предыдущего формата на основе XML, называемого «XML Spreadsheet» («XMLSS»), впервые представленного в Excel 2002. [34]
Хотя Excel 2007 поддерживал и поощрял использование новых форматов на основе XML в качестве замен, он оставался обратно совместимым с традиционными, бинарными форматами. Кроме того, большинство версий Microsoft Excel могут читать CSV , DBF , SYLK , DIF и другие устаревшие форматы. Поддержка некоторых старых форматов файлов была удалена в Excel 2007. [35] Форматы файлов были в основном из программ на основе DOS.
OpenOffice.org создал документацию формата Excel. Существуют две эпохи формата: формат OLE 97-2003 и более старый потоковый формат. [36] Microsoft сделала спецификацию двоичного формата Excel доступной для свободной загрузки. [37]
Формат XML Spreadsheet, представленный в Excel 2002 [34], — это простой формат на основе XML, в котором отсутствуют некоторые более продвинутые функции, такие как хранение макросов VBA. Хотя предполагаемое расширение файла для этого формата — .xml , программа также корректно обрабатывает файлы XML с расширением .xls . Эта функция широко используется сторонними приложениями (например, MySQL Query Browser ) для предоставления возможностей «экспорта в Excel» без реализации двоичного формата файла. Следующий пример будет корректно открыт Excel, если сохранен как Book1.xml или Book1.xls :
<?xml version="1.0"?> <Workbook xmlns= "urn:schemas-microsoft-com:office:spreadsheet" xmlns:o= "urn:schemas-microsoft-com:office:office" xmlns:x= "urn:schemas-microsoft-com:office:excel" xmlns:ss= "urn:schemas-microsoft-com:office:spreadsheet" xmlns:html= "http://www.w3.org/TR/REC-html40" > <Worksheet ss:Name= "Sheet1" > <Table ss:ExpandedColumnCount= "2" ss:ExpandedRowCount= "2" x:FullColumns= "1" x:FullRows= "1" > <Row> <Cell><Data ss:Type= "String" > Имя </Data></Cell> <Cell><Data ss:Type= "Строка" > Пример </Data></Ячейка > </Row> <Row> <Cell><Data ss :Type= "Строка" > Значение </Data>< /Ячейка> <Cell><Data ss:Type= "Число" > 123 </Data></Ячейка> </Row> </Table> </Worksheet> </Workbook>
Microsoft Excel 2007, наряду с другими продуктами пакета Microsoft Office 2007 , представил новые форматы файлов. Первый из них (.xlsx) определен в спецификации Office Open XML (OOXML).
Приложения Windows, такие как Microsoft Access и Microsoft Word, а также Excel, могут взаимодействовать друг с другом и использовать возможности друг друга. Наиболее распространенным является Dynamic Data Exchange : хотя он настоятельно не рекомендуется Microsoft, это распространенный метод передачи данных между приложениями, работающими в Windows, а официальные публикации MS называют его «протоколом из ада». [39] Как следует из названия, он позволяет приложениям предоставлять данные другим для расчета и отображения. Он очень распространен на финансовых рынках и используется для подключения к важным службам финансовых данных, таким как Bloomberg и Reuters .
Связывание и внедрение объектов OLE позволяет приложению Windows управлять другим, чтобы оно могло форматировать или вычислять данные. Это может принимать форму «внедрения», когда приложение использует другое для обработки задачи, для которой оно больше подходит, например, презентация PowerPoint может быть внедрена в электронную таблицу Excel или наоборот. [40] [41] [42] [43]
Пользователи Excel могут получать доступ к внешним источникам данных через функции Microsoft Office, такие как (например) .odc
соединения, созданные с помощью формата файла Office Data Connection. Сами файлы Excel могут обновляться с помощью драйвера ODBC , поставляемого Microsoft .
Excel может принимать данные в режиме реального времени через несколько программных интерфейсов, которые позволяют ему взаимодействовать со многими источниками данных, такими как Bloomberg и Reuters (через надстройки, такие как Power Plus Pro ).
В качестве альтернативы Microsoft Query обеспечивает просмотр на основе ODBC в Microsoft Excel. [47] [48] [49]
Программисты создали API для открытия таблиц Excel в различных приложениях и средах, отличных от Microsoft Excel. Они включают открытие документов Excel в Интернете с помощью элементов управления ActiveX или плагинов, таких как Adobe Flash Player . Проект Apache POI с открытым исходным кодом предоставляет библиотеки Java для чтения и записи файлов таблиц Excel.
Защита Microsoft Excel предлагает несколько типов паролей:
Все пароли, кроме пароля для открытия документа, можно удалить мгновенно, независимо от версии Microsoft Excel, использованной для создания документа. Эти типы паролей используются в основном для совместной работы над документом. Такие защищенные паролем документы не шифруются , а источники данных из установленного пароля сохраняются в заголовке документа . Пароль для защиты книги является исключением — когда он установлен, документ шифруется стандартным паролем «VelvetSweatshop», но поскольку он известен общественности, он фактически не добавляет никакой дополнительной защиты документу. Единственный тип пароля, который может помешать злоумышленнику получить доступ к документу, — это пароль для открытия документа . Криптографическая стойкость этого вида защиты сильно зависит от версии Microsoft Excel, использованной для создания документа.
В Microsoft Excel 95 и более ранних версиях пароль для открытия преобразуется в 16-битный ключ , который можно мгновенно взломать. В Excel 97/2000 пароль преобразуется в 40-битный ключ, который также можно очень быстро взломать с помощью современного оборудования. Что касается сервисов, использующих радужные таблицы (например, Password-Find), то для снятия защиты требуется до нескольких секунд. Кроме того, программы взлома паролей могут проводить атаки методом перебора со скоростью сотен тысяч паролей в секунду, что позволяет не только расшифровывать документ, но и находить исходный пароль.
В Excel 2003/XP шифрование немного лучше — пользователь может выбрать любой алгоритм шифрования, доступный в системе (см. Cryptographic Service Provider ). Благодаря CSP файл Excel не может быть расшифрован, а значит, и пароль для открытия не может быть удален, хотя скорость атаки методом подбора остается довольно высокой. Тем не менее, по умолчанию установлен старый алгоритм Excel 97/2000 . Поэтому пользователи, не меняющие настройки по умолчанию, лишены надежной защиты своих документов.
Ситуация кардинально изменилась в Excel 2007 , где для расшифровки стал использоваться современный алгоритм AES с ключом в 128 бит, а 50-тысячекратное использование хеш-функции SHA1 снизило скорость перебора до сотен паролей в секунду. В Excel 2010 стойкость защиты по умолчанию была увеличена в два раза за счет использования 100-тысячекратного SHA1 для преобразования пароля в ключ.
Excel Mobile — это программа для работы с электронными таблицами, которая может редактировать файлы XLSX. Она может редактировать и форматировать текст в ячейках, вычислять формулы, выполнять поиск в электронной таблице, сортировать строки и столбцы, закреплять области, фильтровать столбцы, добавлять комментарии и создавать диаграммы. Она не может добавлять столбцы или строки, кроме как на краю документа, переставлять столбцы или строки, удалять строки или столбцы или добавлять вкладки электронных таблиц. [53] [54] [55] [56] [57] [58] Версия 2007 года имеет возможность использовать полноэкранный режим для работы с ограниченным разрешением экрана, а также разделенные области для одновременного просмотра различных частей рабочего листа. [56] Параметры защиты, параметры масштабирования, параметры автофильтрации, определенное форматирование диаграмм, скрытые листы и другие функции не поддерживаются в Excel Mobile и будут изменены при открытии и сохранении рабочей книги. [57] В 2015 году Excel Mobile стал доступен для Windows 10 и Windows 10 Mobile в Магазине Windows . [59] [60]
Excel для Интернета — это бесплатная облегченная версия Microsoft Excel, доступная как часть Office для Интернета, которая также включает веб-версии Microsoft Word и Microsoft PowerPoint.
Excel для Интернета может отображать большинство функций, доступных в настольных версиях Excel, хотя он может не иметь возможности вставлять или редактировать их. Некоторые подключения к данным недоступны в Excel для Интернета, в том числе с диаграммами, которые могут использовать эти внешние подключения. Excel для Интернета также не может отображать устаревшие функции, такие как макросы Excel 4.0 или диалоговые листы Excel 5.0. Также есть небольшие различия между тем, как работают некоторые функции Excel. [61]
Microsoft Excel Viewer — бесплатная программа для Microsoft Windows , предназначенная для просмотра и печати электронных таблиц, созданных в Excel. [62] Microsoft прекратила поддержку просмотрщика в апреле 2018 года, выпустив последнее обновление безопасности в феврале 2019 года для Excel Viewer 2007 (SP3). [63] [64]
Первой версией, выпущенной Microsoft, была Excel 97 Viewer. [65] [66] Excel 97 Viewer поддерживался в Windows CE для карманных ПК . [67] В октябре 2004 года Microsoft выпустила Excel Viewer 2003. [68] В сентябре 2007 года Microsoft выпустила Excel Viewer 2003 Service Pack 3 (SP3). [69] В январе 2008 года Microsoft выпустила Excel Viewer 2007 (с несворачиваемым ленточным интерфейсом). [70] В апреле 2009 года Microsoft выпустила Excel Viewer 2007 Service Pack 2 (SP2). [71] В октябре 2011 года Microsoft выпустила Excel Viewer 2007 Service Pack 3 (SP3). [72]
Microsoft советует для бесплатного просмотра и печати файлов Excel использовать приложение Excel Mobile для Windows 10 , а для Windows 7 и Windows 8 — загрузить файл в OneDrive и использовать Excel для веб-браузера с учетной записью Microsoft, чтобы открыть их в браузере . [63] [73]
Помимо проблем с электронными таблицами в целом, существуют и другие проблемы, характерные для Excel, включая точность чисел, вводящие в заблуждение статистические функции, ошибки функций mod, ограничения по датам и многое другое.
Несмотря на использование 15-значной точности, Excel может отображать гораздо больше цифр (до тридцати) по запросу пользователя. Но отображаемые цифры не являются теми, которые фактически используются в его вычислениях, и поэтому, например, разность двух чисел может отличаться от разности их отображаемых значений. Хотя такие отклонения обычно выходят за пределы 15-го знака после запятой, исключения случаются, особенно для очень больших или очень маленьких чисел. Серьезные ошибки могут возникнуть, если решения принимаются на основе автоматизированного сравнения чисел (например, с помощью функции Excel If ), поскольку равенство двух чисел может быть непредсказуемым. [ необходима цитата ]
На рисунке дробь 1/9000 отображается в Excel. Хотя это число имеет десятичное представление, представляющее собой бесконечную строку единиц, Excel отображает только первые 15 цифр. Во второй строке к дроби добавляется единица, и снова Excel отображает только 15 цифр. В третьей строке из суммы вычитается единица с помощью Excel. Поскольку сумма во второй строке имеет только одиннадцать единиц после десятичной точки, разница при вычитании 1 из этого отображаемого значения составляет три нуля, за которыми следует строка из одиннадцати единиц. Однако разница, сообщаемая Excel в третьей строке, составляет три нуля, за которыми следует строка из тринадцати единиц и две дополнительные ошибочные цифры. Это происходит потому, что Excel вычисляет примерно на полцифры больше, чем отображает.
Excel работает с модифицированной версией спецификации IEEE 754 1985 года . [74] Реализация Excel включает преобразования между двоичными и десятичными представлениями, что приводит к точности, которая в среднем лучше, чем можно было бы ожидать от простой пятнадцатизначной точности, но может быть и хуже. Подробности см. в основной статье.
Помимо точности пользовательских вычислений, может возникнуть вопрос точности функций, предоставляемых Excel. В частности, в области статистических функций Excel критиковали за то, что он жертвует точностью ради скорости вычислений. [75] [76]
Поскольку многие вычисления в Excel выполняются с использованием VBA, дополнительной проблемой является точность VBA, которая зависит от типа переменной и запрошенной пользователем точности. [77]
Точность и удобство статистических инструментов в Excel подвергались критике [78] [79] [80] [81] [82] как неправильно обрабатывающие ситуации, когда данные отсутствуют, как возвращающие неверные значения из-за неумелой обработки округлений и больших чисел, как только выборочно обновляющие вычисления в электронной таблице при изменении некоторых значений ячеек, и как имеющие ограниченный набор статистических инструментов. Microsoft объявила, что некоторые из этих проблем решены в Excel 2010. [83]
Excel имеет проблемы с операциями по модулю . В случае слишком больших результатов Excel вернет предупреждение об ошибке#НОМЕР!вместо ответа. [84]
Excel включает 29 февраля 1900 года, неправильно считая 1900 год високосным , хотя, например, 2100 год правильно считается невисокосным. [85] [86] Ошибка возникла в Lotus 1-2-3 (намеренно реализована для экономии памяти компьютера), а также была намеренно реализована в Excel в целях совместимости с ошибками . [87] Это наследие позже было перенесено в формат файла Office Open XML. [88]
Таким образом, число (не обязательно целое), большее или равное 61, интерпретируемое как дата и время, представляет собой (реальное) количество дней после 30 декабря 1899 года, 0:00, неотрицательное число меньше 60 представляет собой количество дней после 31 декабря 1899 года, 0:00, а числа с целой частью 60 представляют собой вымышленный день.
Excel поддерживает даты с годами в диапазоне 1900–9999, за исключением 31 декабря 1899 года, которое можно ввести как 0, и оно будет отображаться как 0-янв-1900.
Преобразование части дня в часы, минуты и дни путем рассмотрения ее как момента 1 января 1900 года не работает для отрицательной дроби. [89]
Если введен текст, который случайно находится в форме, которую Excel интерпретирует как дату, текст может быть непреднамеренно изменен на стандартный формат даты. Похожая проблема возникает, когда текст случайно находится в форме записи числа с плавающей точкой. В этих случаях исходный точный текст не может быть восстановлен из результата. Форматирование ячейки как ТЕКСТ перед вводом неоднозначного текста не позволяет Excel преобразовать его.
Эта проблема вызвала хорошо известную проблему при анализе ДНК , например, в биоинформатике . Как впервые было сообщено в 2004 году, [90] генетики обнаружили, что Excel автоматически и неправильно преобразует определенные имена генов в даты. Последующее исследование в 2016 году показало, что многие рецензируемые научные журнальные статьи были затронуты, и что «из выбранных журналов доля опубликованных статей с файлами Excel, содержащими списки генов, которые затронуты ошибками в именах генов, составляет 19,6%». [91] Excel анализирует скопированные и вставленные данные и иногда изменяет их в зависимости от того, что он думает о них. Например, MARCH1 (Membrane Associated Ring-CH-type finger 1) преобразуется в дату 1 марта (1-Mar), а SEPT2 (Septin 2) преобразуется в 2 сентября (2-Sep) и т. д. [92] Хотя некоторые вторичные источники новостей [93] сообщили об этом как об ошибке Excel, первоначальные авторы статьи 2016 года возложили вину на исследователей, неправильно использовавших Excel. [91] [94]
В августе 2020 года Комитет по номенклатуре генов HUGO (HGNC) опубликовал в журнале Nature новые рекомендации относительно наименования генов, чтобы избежать проблем с «символами, которые влияют на обработку и извлечение данных». На данный момент было переименовано 27 генов, включая изменение MARCH1 на MARCHF1 и SEPT1 на SEPTIN1, чтобы избежать случайного преобразования названий генов в даты. [95]
В октябре 2023 года Microsoft исправила давнюю проблему. [96]
Следующие функции возвращают неверные результаты при передаче строки длиной более 255 символов: [97]
type()
неправильно возвращает 16, что означает «Значение ошибки»IsText()
при вызове как метода объекта VBA WorksheetFunction
(т. е. WorksheetFunction.IsText()
в VBA) ошибочно возвращает «false».Microsoft Excel не откроет два документа с одинаковыми именами и вместо этого выдаст следующую ошибку:
Причина в неоднозначности вычислений со связанными ячейками. Если есть ячейка ='[Book1.xlsx]Sheet1'!$G$33
и открыты две книги с именем «Book1», нет способа определить, какую из них имеет в виду пользователь. [99]
Microsoft изначально выпустила на рынок программу для работы с электронными таблицами под названием Multiplan в 1982 году. Multiplan стал очень популярен на системах CP/M , но на системах MS-DOS он уступил популярность Lotus 1-2-3 . Microsoft выпустила первую версию Excel для Macintosh 30 сентября 1985 года, а первая версия для Windows была 2.05 (для синхронизации с версией Macintosh 2.2) 19 ноября 1987 года. [100] [101] Lotus не спешила выводить 1-2-3 на Windows, и к началу 1990-х годов Excel начал продаваться лучше 1-2-3 и помог Microsoft занять позицию ведущего разработчика программного обеспечения для ПК. Это достижение укрепило Microsoft как серьезного конкурента и показало ее будущее в разработке программного обеспечения с графическим интерфейсом . Microsoft сохранила свое преимущество с помощью регулярных новых релизов, каждые два года или около того.
Excel 2.0 — первая версия Excel для платформы Intel . Версии до 2.0 были доступны только на Apple Macintosh.
Первая версия Windows была помечена как «2», чтобы соответствовать версии Mac. Она была анонсирована 6 октября 1987 года и выпущена 19 ноября. [102] Она включала в себя версию Windows для выполнения. [103]
В 1989 году BYTE включил Excel для Windows в список победителей премии BYTE Awards в категории «Distinction». Журнал заявил, что порт «необыкновенной» версии для Macintosh «сияет», имея пользовательский интерфейс, такой же хороший или даже лучший, чем у оригинала.
Включены панели инструментов, возможности рисования, контуры, поддержка надстроек, 3D-диаграммы и многие другие новые функции. [103]
Введено автозаполнение. [104]
Кроме того, пасхальное яйцо в Excel 4.0 показывает скрытую анимацию танцующего набора цифр от 1 до 3, представляющего Lotus 1–2–3, который затем раздавливается логотипом Excel. [105]
Начиная с версии 5.0, Excel включает Visual Basic for Applications (VBA), язык программирования на основе Visual Basic , который добавляет возможность автоматизировать задачи в Excel и предоставлять определяемые пользователем функции (UDF) для использования в рабочих листах. VBA включает полнофункциональную интегрированную среду разработки (IDE). Запись макросов может создавать код VBA, реплицирующий действия пользователя, что позволяет легко автоматизировать обычные задачи. VBA позволяет создавать формы и элементы управления на рабочих листах для связи с пользователем. Язык поддерживает использование (но не создание) DLL ActiveX ( COM ) ; более поздние версии добавляют поддержку модулей классов, что позволяет использовать базовые методы объектно-ориентированного программирования .
Функциональность автоматизации, предоставляемая VBA, сделала Excel мишенью для макровирусов . Это вызывало серьезные проблемы, пока антивирусные продукты не начали обнаруживать эти вирусы. Microsoft запоздало предприняла шаги для предотвращения злоупотреблений, добавив возможность полностью отключать макросы, включать макросы при открытии рабочей книги или доверять всем макросам, подписанным с использованием доверенного сертификата.
Версии Excel с 5.0 по 9.0 содержат различные пасхальные яйца , включая «Зал измученных душ», мини-игру в стиле Doom , хотя начиная с версии 10 Microsoft приняла меры по устранению таких недокументированных функций из своих продуктов. [106]
5.0 была выпущена в 16-битной версии x86 для Windows 3.1, а затем в 32-битной версии для NT 3.51 (x86/Alpha/PowerPC)
Выпущенная в 1995 году вместе с Microsoft Office для Windows 95 , это первая основная версия после Excel 5.0, поскольку Excel 6.0 не существует, поскольку все приложения Office стандартизированы на основе одного и того же номера основной версии.
Внутренняя переписка на 32 бита. Внешних изменений почти нет, но быстрее и стабильнее.
Excel 95 содержал скрытую Doom -подобную мини-игру под названием «Зал измученных душ», серию комнат, в которых в качестве пасхального яйца были указаны имена и лица разработчиков. [107]
Включено в Office 97 (для x86 и Alpha). Это было крупное обновление, которое представило помощника по работе с бумагами и стандартный VBA, используемый вместо внутреннего Excel Basic. Оно представило теперь удаленные метки Natural Language.
В эту версию Excel в качестве пасхального яйца включен симулятор полета.
Включено в Office 2000. Это было незначительное обновление, но оно внесло обновление в буфер обмена, где он может хранить несколько объектов одновременно. Помощник Office, чье частое нежелательное появление в Excel 97 раздражало многих пользователей, стал менее навязчивым.
Небольшая 3D-игра под названием «Dev Hunter» (вдохновленная Spy Hunter ) была включена в качестве пасхального яйца. [108] [109]
Включено в Office XP . Очень незначительные улучшения.
Включено в Office 2003. Незначительные улучшения.
Включено в Office 2007. Этот выпуск был серьезным обновлением по сравнению с предыдущей версией. Подобно другим обновленным продуктам Office, Excel в 2007 году использовал новую систему меню Ribbon. Это отличалось от того, к чему привыкли пользователи, и было встречено неоднозначно. Одно исследование сообщило о довольно хорошем принятии пользователями, за исключением очень опытных пользователей и пользователей приложений для обработки текстов с классическим интерфейсом WIMP , но было менее убедительно с точки зрения эффективности и организации. [110] Однако онлайн-опрос показал, что большинство респондентов отрицательно отнеслись к изменению, причем продвинутые пользователи были «несколько более негативны», чем пользователи среднего уровня, а пользователи сообщили о самооценке снижения производительности.
Добавленная функциональность включала Таблицы, [111] и набор SmartArt редактируемых бизнес-диаграмм. Также было добавлено улучшенное управление именованными переменными через Name Manager и значительно улучшенная гибкость в форматировании графиков, которые позволяют маркировать координаты ( x, y ) и линии произвольного веса. Было введено несколько улучшений в сводные таблицы.
Также, как и в других офисных продуктах, были введены форматы файлов Office Open XML, включая .xlsm для рабочей книги с макросами и .xlsx для рабочей книги без макросов. [112]
В частности, многие ограничения по размеру предыдущих версий были значительно увеличены. Для иллюстрации, количество строк теперь было 1 048 576 (2 20 ), а столбцов — 16 384 (2 14 ; крайний правый столбец — XFD). Это меняет то, что является допустимой ссылкой A1 по сравнению с именованным диапазоном. Эта версия более широко использовала несколько ядер для расчета электронных таблиц; однако макросы VBA не обрабатываются параллельно, а надстройки XLL выполнялись параллельно только в том случае, если они были потокобезопасными , и это было указано при регистрации.
Включенная в Office 2010 , это следующая основная версия после v12.0, поскольку версия 13 была пропущена .
Незначительные улучшения и поддержка 64-битной архитектуры, [113] включая следующее:
Включено в Office 2013 вместе со множеством новых инструментов, включенных в этот выпуск:
Включено в Office 2016 вместе со множеством новых инструментов, включенных в этот выпуск:
Microsoft больше не выпускает Office или Excel в отдельных версиях. Вместо этого функции вводятся автоматически с течением времени с помощью Центра обновления Windows. Номер версии остается 16.0. После этого можно указать только приблизительные даты появления функций.
Excel предлагает множество усовершенствований пользовательского интерфейса по сравнению с первыми электронными таблицами; однако суть остается той же, что и в оригинальном программном обеспечении для работы с электронными таблицами VisiCalc : программа отображает ячейки, организованные в строки и столбцы, и каждая ячейка может содержать данные или формулу с относительными или абсолютными ссылками на другие ячейки.
Excel 2.0 для Windows, созданный по образцу своего аналога на основе Mac GUI, косвенно расширил установленную базу тогда еще зарождающейся среды Windows. Excel 2.0 был выпущен за месяц до Windows 2.0, а установленная база Windows была настолько низкой на тот момент в 1987 году, что Microsoft пришлось объединить версию Windows 1.0 с Excel 2.0. [123] В отличие от Microsoft Word, версии Excel для DOS никогда не было.
Excel стал первой электронной таблицей, которая позволила пользователю определять внешний вид электронных таблиц (шрифты, атрибуты символов и внешний вид ячеек). Он также представил интеллектуальный пересчет ячеек, при котором обновляются только ячейки, зависящие от изменяемой ячейки (предыдущие программы электронных таблиц все время пересчитывали или ждали определенной команды пользователя). Excel представил автозаполнение, возможность перетаскивать и расширять поле выбора, чтобы автоматически копировать содержимое ячейки или строки в соседние ячейки или строки, корректируя копии интеллектуально, автоматически увеличивая ссылки на ячейки или их содержимое. Excel также представил обширные возможности построения графиков.
Поскольку Excel широко используется, он подвергался атакам хакеров. Хотя Excel не доступен напрямую из Интернета, если злоумышленник может заставить жертву открыть файл в Excel, и в Excel есть соответствующая ошибка безопасности, то злоумышленник может получить контроль над компьютером жертвы. [124] У GCHQ Великобритании есть инструмент под названием TORNADO ALLEY для этой цели. [125] [126]
Помимо пасхальных яиц, в Excel было создано или воссоздано множество игр, таких как Tetris , 2048 , Scrabble , Yahtzee , Angry Birds , Pac-Man , Civilization , Monopoly , Battleship , Blackjack , Space Invaders и другие. [127] [128] [129] [130] [131]
В 2020 году Excel стал киберспортом с появлением Кубка мира по финансовому моделированию . [132]
Microsoft Excel принимает ряд дополнительных переключателей, которые можно использовать для управления запуском программы. В этой статье перечислены переключатели и приведено описание каждого переключателя.
Доступ к внешним данным осуществляется через файл подключения, например файл Office Data Connection (ODC) (.odc)
Чтобы создать надежное решение, нам всегда приходится включать код VBA...
Microsoft Query — это инструмент для извлечения данных (т. е. браузер ODBC), который можно использовать в Excel 97. Он позволяет пользователю создавать и сохранять запросы во внешних реляционных базах данных, для которых доступен драйвер ODBC.