Автоматизация рутины в Microsoft Excel при помощи VBA
В этом посте я расскажу, что такое VBA и как с ним работать в Microsoft Excel 2007/2010 (для более старых версий изменяется лишь интерфейс — код, скорее всего, будет таким же) для автоматизации различной рутины.
VBA (Visual Basic for Applications) — это упрощенная версия Visual Basic, встроенная в множество продуктов линейки Microsoft Office. Она позволяет писать программы прямо в файле конкретного документа. Вам не требуется устанавливать различные IDE — всё, включая отладчик, уже есть в Excel.
Еще при помощи Visual Studio Tools for Office можно писать макросы на C# и также встраивать их. Спасибо, FireStorm.
Сразу скажу — писать на других языках (C++/Delphi/PHP) также возможно, но требуется научится читать, изменять и писать файлы офиса — встраивать в документы не получится. А интерфейсы Microsoft работают через COM. Чтобы вы поняли весь ужас, вот Hello World с использованием COM.
Поэтому, увы, будем учить Visual Basic.
Чуть-чуть подготовки и постановка задачи
Итак, поехали. Открываем Excel.
Для начала давайте добавим в Ribbon панель «Разработчик». В ней находятся кнопки, текстовые поля и пр. элементы для конструирования форм.



Теперь давайте подумаем, на каком примере мы будем изучать VBA. Недавно мне потребовалось красиво оформить прайс-лист, выглядевший, как таблица. Идём в гугл, набираем «прайс-лист» и качаем любой, который оформлен примерно так (не сочтите за рекламу, пожалуйста):

То есть требуется, чтобы было как минимум две группы, по которым можно объединить товары (в нашем случае это будут Тип и Производитель — в таком порядке). Для того, чтобы предложенный мною алгоритм работал корректно, отсортируйте товары так, чтобы товары из одной группы стояли подряд (сначала по Типу, потом по Производителю).
Результат, которого хотим добиться, выглядит примерно так:

Разумеется, если смотреть прайс только на компьютере, то можно добавить фильтры и будет гораздо удобнее искать нужный товар. Однако мы хотим научится кодить и задача вполне подходящая, не так ли?
Кодим
Для начала требуется создать кнопку, при нажатии на которую будет вызываться наша програма. Кнопки находятся в панели «Разработчик» и появляются по кнопке «Вставить». Вам нужен компонент формы «Кнопка». Нажали, поставили на любое место в листе. Далее, если не появилось окно назначения макроса, надо нажать правой кнопкой и выбрать пункт «Назначить макрос». Назовём его FormatPrice. Важно, чтобы перед именем макроса ничего не было — иначе он создастся в отдельном модуле, а не в пространстве имен книги. В этому случае вам будет недоступно быстрое обращение к выделенному листу. Нажимаем кнопку «Новый».


И вот мы в среде разработки VB. Также её можно вызвать из контекстного меню командой «Исходный текст»/«View code».


Перед вами окно с заглушкой процедуры. Можете его развернуть. Код должен выглядеть примерно так:
Напишем Hello World:
Sub FormatPrice()
MsgBox «Hello World!»
End Sub
И запустим либо щелкнув по кнопке (предварительно сняв с неё выделение), либо клавишей F5 прямо из редактора.
Тут, пожалуй, следует отвлечься на небольшой ликбез по поводу синтаксиса VB. Кто его знает — может смело пропустить этот раздел до конца. Основное отличие Visual Basic от Pascal/C/Java в том, что команды разделяются не ;, а переносом строки или двоеточием (:), если очень хочется написать несколько команд в одну строку. Чтобы понять основные правила синтаксиса, приведу абстрактный код.
Примеры синтаксиса
‘ Процедура. Ничего не возвращает
‘ Перегрузка в VBA отсутствует
Sub foo(a As String , b As String )
‘ Exit Sub ‘ Это значит «выйти из процедуры»
MsgBox a + «;» + b
End Sub
‘ Функция. Вовращает Integer
Function LengthSqr(x As Integer , y As Integer ) As Integer
‘ Exit Function
LengthSqr = x * x + y * y
End Function
Sub FormatPrice()
Dim s1 As String , s2 As String
s1 = «str1»
s2 = «str2»
If s1 <> s2 Then
foo «123» , «456» ‘ Скобки при вызове процедур запрещены
End If
Dim res As sTRING ‘ Регистр в VB не важен. Впрочем, редактор Вас поправит
Dim i As Integer
‘ Цикл всегда состоит из нескольких строк
For i = 1 To 10
res = res + CStr(i) ‘ Конвертация чего угодно в String
If i = 5 Then Exit For
Next i
Dim x As Double
x = Val( «1.234» ) ‘ Парсинг чисел
x = x + 10
MsgBox x
On Error Resume Next ‘ Обработка ошибок — игнорировать все ошибки
x = 5 / 0
MsgBox x
On Error GoTo Err ‘ При ошибке перейти к метке Err
x = 5 / 0
MsgBox «OK!»
GoTo ne
ne:
On Error GoTo 0 ‘ Отключаем обработку ошибок
‘ Циклы бывает, какие захотите
Do While True
Exit Do
Loop ‘While True
Do ‘Until False
Exit Do
Loop Until False
‘ А вот при вызове функций, от которых хотим получить значение, скобки нужны.
‘ Val также умеет возвращать Integer
Select Case LengthSqr(Len( «abc» ), Val( «4» ))
Case 24
MsgBox «0»
Case 25
MsgBox «1»
Case 26
MsgBox «2»
End Select
‘ Двухмерный массив.
‘ Можно также менять размеры командой ReDim (Preserve) — см. google
Dim arr(1 to 10, 5 to 6) As Integer
arr(1, 6) = 8
Dim coll As New Collection
Dim coll2 As Collection
coll.Add «item» , «key»
Set coll2 = coll ‘ Все присваивания объектов должны производится командой Set
MsgBox coll2( «key» )
Set coll2 = New Collection
MsgBox coll2.Count
End Sub
Грабли-1. При копировании кода из IDE (в английском Excel) есь текст конвертируется в 1252 Latin-1. Поэтому, если хотите сохранить русские комментарии — надо сохранить крокозябры как Latin-1, а потом открыть в 1251.
Грабли-2. Т.к. VB позволяет использовать необъявленные переменные, я всегда в начале кода (перед всеми процедурами) ставлю строчку Option Explicit. Эта директива запрещает интерпретатору заводить переменные самостоятельно.
Грабли-3. Глобальные переменные можно объявлять только до первой функции/процедуры. Локальные — в любом месте процедуры/функции.
Еще немного дополнительных функций, которые могут пригодится: InPos, Mid, Trim, LBound, UBound. Также ответы на все вопросы по поводу работы функций/их параметров можно получить в MSDN.
Надеюсь, что этого Вам хватит, чтобы не пугаться кода и самостоятельно написать какое-нибудь домашнее задание по информатике. По ходу поста я буду ненавязчиво знакомить Вас с новыми конструкциями.
Кодим много и под Excel
В этой части мы уже начнём кодить нечто, что умеет работать с нашими листами в Excel. Для начала создадим отдельный лист с именем result (лист с данными назовём data). Теперь, наверное, нужно этот лист очистить от того, что на нём есть. Также мы «выделим» лист с данными, чтобы каждый раз не писать длинное обращение к массиву с листами.
Sub FormatPrice()
Sheets( «result» ).Cells.Clear
Sheets( «data» ).Activate
End Sub
Работа с диапазонами ячеек
Вся работа в Excel VBA производится с диапазонами ячеек. Они создаются функцией Range и возвращают объект типа Range. У него есть всё необходимое для работы с данными и/или оформлением. Кстати сказать, свойство Cells листа — это тоже Range.
Примеры работы с Range
Sheets( «result» ).Activate
Dim r As Range
Set r = Range( «A1» )
r.Value = «123»
Set r = Range( «A3,A5» )
r.Font.Color = vbRed
r.Value = «456»
Set r = Range( «A6:A7» )
r.Value = «=A1+A3»
Теперь давайте поймем алгоритм работы нашего кода. Итак, у каждой строчки листа data, начиная со второй, есть некоторые данные, которые нас не интересуют (ID, название и цена) и есть две вложенные группы, к которым она принадлежит (тип и производитель). Более того, эти строки отсортированы. Пока мы забудем про пропуски перед началом новой группы — так будет проще. Я предлагаю такой алгоритм:
- Считали группы из очередной строки.
- Пробегаемся по всем группам в порядке приоритета (вначале более крупные)
- Если текущая группа не совпадает, вызываем процедуру AddGroup(i, name), где i — номер группы (от номера текущей до максимума), name — её имя. Несколько вызовов необходимы, чтобы создать не только наш заголовок, но и всё более мелкие.
Для упрощения работы рекомендую определить следующие функции-сокращения:
Function GetCol(Col As Integer ) As String
GetCol = Chr(Asc( «A» ) + Col)
End FunctionFunction GetCellS(Sheet As String , Col As Integer , Row As Integer ) As Range
Set GetCellS = Sheets(Sheet).Range(GetCol(Col) + CStr(Row))
End FunctionFunction GetCell(Col As Integer , Row As Integer ) As Range
Set GetCell = Range(GetCol(Col) + CStr(Row))
End FunctionДалее определим глобальную переменную «текущая строчка»: Dim CurRow As Integer. В начале процедуры её следует сделать равной единице. Еще нам потребуется переменная-«текущая строка в data», массив с именами групп текущей предыдущей строк. Потом можно написать цикл «пока первая ячейка в строке непуста».
Глобальные переменные
Option Explicit ‘ про эту строчку я уже рассказывал
Dim CurRow As Integer
Const GroupsCount As Integer = 2
Const DataCount As Integer = 3FormatPrice
Sub FormatPrice()
Dim I As Integer ‘ строка в data
CurRow = 1
Dim Groups(1 To GroupsCount) As String
Dim PrGroups(1 To GroupsCount) As StringSheets( «data» ).Activate
I = 2
Do While True
If GetCell(0, I).Value = «» Then Exit Do
‘ .
I = I + 1
Loop
End SubТеперь надо заполнить массив Groups:
На месте многоточия
Dim I2 As Integer
For I2 = 1 To GroupsCount
Groups(I2) = GetCell(I2, I)
Next I2
‘ .
For I2 = 1 To GroupsCount ‘ VB не умеет копировать массивы
PrGroups(I2) = Groups(I2)
Next I2
I = I + 1И создать заголовки:
На месте многоточия в предыдущем куске
For I2 = 1 To GroupsCount
If Groups(I2) <> PrGroups(I2) Then
Dim I3 As Integer
For I3 = I2 To GroupsCount
AddHeader I3, Groups(I3)
Next I3
Exit For
End If
Next I2Не забудем про процедуру AddHeader:
Перед FormatPrice
Sub AddHeader(Ty As Integer , Name As String )
GetCellS( «result» , 1, CurRow).Value = Name
CurRow = CurRow + 1
End SubТеперь надо перенести всякую информацию в result
For I2 = 0 To DataCount — 1
GetCellS( «result» , I2, CurRow).Value = GetCell(I2, I)
Next I2Подогнать столбцы по ширине и выбрать лист result для показа результата
После цикла в конце FormatPrice
Sheets( «Result» ).Activate
Columns.AutoFitВсё. Можно любоваться первой версией.

Некрасиво, но похоже. Давайте разбираться с форматированием. Сначала изменим процедуру AddHeader:
Sub AddHeader(Ty As Integer , Name As String )
Sheets( «result» ).Range( «A» + CStr(CurRow) + «:C» + CStr(CurRow)).Merge
‘ Чтобы не заводить переменную и не писать каждый раз длинный вызов
‘ можно воспользоваться блоком With
With GetCellS( «result» , 0, CurRow)
.Value = Name
.Font.Italic = True
.Font.Name = «Cambria»
Select Case Ty
Case 1 ‘ Тип
.Font.Bold = True
.Font.Size = 16
Case 2 ‘ Производитель
.Font.Size = 12
End Select
.HorizontalAlignment = xlCenter
End With
CurRow = CurRow + 1
End Sub
Осталось только сделать границы. Тут уже нам требуется работать со всеми объединёнными ячейками, иначе бордюр будет только у одной:

Поэтому чуть-чуть меняем код с добавлением стиля границ:
Sub AddHeader(Ty As Integer , Name As String )
With Sheets( «result» ).Range( «A» + CStr(CurRow) + «:C» + CStr(CurRow))
.Merge
.Value = Name
.Font.Italic = True
.Font.Name = «Cambria»
.HorizontalAlignment = xlCenterSelect Case Ty
Case 1 ‘ Тип
.Font.Bold = True
.Font.Size = 16
.Borders(xlTop).Weight = xlThick
Case 2 ‘ Производитель
.Font.Size = 12
.Borders(xlTop).Weight = xlMedium
End Select
.Borders(xlBottom).Weight = xlMedium ‘ По убыванию: xlThick, xlMedium, xlThin, xlHairline
End With
CurRow = CurRow + 1
End Sub
Осталось лишь добится пропусков перед началом новой группы. Это легко:
В начале FormatPrice
Dim I As Integer ‘ строка в data
CurRow = 0 ‘ чтобы не было пропуска в самом начале
Dim Groups(1 To GroupsCount) As StringВ цикле расстановки заголовков
If Groups(I2) <> PrGroups(I2) Then
CurRow = CurRow + 1
Dim I3 As Integer
В точности то, что и хотели.
Надеюсь, что эта статья помогла вам немного освоится с программированием для Excel на VBA. Домашнее задание — добавить заголовки «ID, Название, Цена» в результат. Подсказка:
CurRow = 0CurRow = 1.Файл можно скачать тут (min.us) или тут (Dropbox). Не забудьте разрешить исполнение макросов.
Если кто-нибудь подскажет человеческих файлохостинг, залью туда.Спасибо за внимание.
Буду рад конструктивной критике в комментариях.
UPD: Перезалил пример на Dropbox и min.us.
UPD2: На самом деле, при вызове процедуры с одним параметром скобки можно поставить. Либо использовать конструкцию Call Foo(«bar», 1, 2, 3) — тут скобки нужны постоянно.
Какой язык программирования использовался при создании excel
= Мир MS Excel/Статьи об Excel
- 1
- 2
- 3
Электронная таблица — вещь непростая, хотя мы воспринимаем существование подобных приложений как нечто само собой разумеющееся. В те времена, когда подобных программ не существовало, люди использовали громоздкие вычислительные машины или калькуляторы, часами работая над заданиями, выполнение которых сегодня занимает всего несколько минут.
В конце 70-х годов, когда люди еще не знали, что такое персональный компьютер в офисе, Ден Бриклин (Dan Bricklin) и Боб Фрэнкстон (Bob Frankston) создали VisiCalc — первую в мире электронную таблицу. Программа VisiCalc была написана для компьютеров типа Apple П, которые по сравнению с современными машинами кажутся просто игрушечными. Очень скоро VisiCalc стала известной и особо дальновидные компании приобретали компьютеры Apple П с единственной целью — планировать бюджет с помощью программы VisiCalc. Поэтому многие считают, что своим успехом в то время компьютеры Apple П в значительной мере обязаны VisiCalc.
Потом появился Lotus 1-2-3
В 1982 году компания ЮМ громко заявила о себе, способствуя в дальнейшем утверждению персональных компьютеров на мировом рынке. Не тратя времени даром, VisiCorp адаптировала VisiCalc к новой аппаратной среде. Стремясь превзойти успех VisiCalc, небольшая группа программистов Кембриджа (штат Массачусетс) решила создать более совершенную программу управления электронными таблицами. Объединившись в небольшую компанию во главе с Митчем Капором (Mitch Kapor) и Джонатаном Заксом (Jonathon Sachs), эти энтузиасты создали новый программный продукт. Кроме того, впервые в истории создания программных средств была
проведена широкомасштабная рекламная компания по продвижению нового продукта на рынок. Lotus, появившийся в 1983 году, пользовался неизменным успехом в течение многих лет. Несмотря на высокую цену — $495 (да, в те времена люди действительно платили за программу такие деньги), новая программа быстро превзошла VisiCalc по объему продаж. Долгое время Lotus имел одни из самых высоких показателей торговой активности. Возможно, Lotus 1-2-3 — самая популярная прикладная программа из всех существующих.Программные продукты компании Microsoft
Не многие знают о том, что компания Microsoft выпустила свой первый процессор электронных таблиц в начале 80-х. Первый программный продукт такого типа — MultiPlan — вышел в 1982 году. MultiPlan, созданный для компьютеров с операционной системой СР/М, был в последствии адаптирован и для таких платформ, как Apple П, Apple Ш, XENIX и MS- DOS. При создании программы MultiPlan не были соблюдены общепринятые стандарты пользовательского интерфейса. Кроме того, научиться работать с MultiPlan было нелегко, да и пользоваться неудобно. Поэтому, программа не стала популярной в Соединенных Штатах. И не удивительно, что Lotus 1-2-3 оставил своего конкурента MultiPlan далеко позади. В некоторой степени MultiPlan можно считать предшественником Excel. Выпущенный для Macintosh в 1985 году, Excel, подобно другим приложениям Маc, имел графический интерфейс (в отличие от текстового MultiPlan). Первая версия Excel для Windows (названная Excel 2, поскольку первая версия была разработана для Macintosh) вышла в свет в ноябре 1987 года. Excel получил широкое применение не сразу. Однако популярность новой программы постепенно возрастала с распространением Windows. Вскоре появилась версия Lotus 1-2-3 для Windows. Еще одним конкурентом для Excel стал Quattro Pro — программа, созданная компанией Borland International, которая была продана Novell, а затем перешла в собственность Corel (теперешнего владельца Quattro Pro).
Версии Excel
Вкратце об основных версиях Excel для Windows.
Исходная версия Excel для Windows — Excel 2 — появилась в конце 1987 года. Эта версия программы носила название Excel 2, поскольку первая версия была разработана для Macintosh. В то время Windows еще не была широко распространена. Поэтому к Excel прилагалась оперативная версия Windows — операционная система, обладавшая функциями, достаточными для работы в Excel. По сегодняшним стандартам эта версия Excel кажется недоработанной.
В 1990 году компания Microsoft выпустила Excel 3 для Windows. Эта версия обладала более совершенными инструментами и внешним видом. В Excel 3 появились панели
инструментов, средства рисования, режим структуры рабочей книги, надстройки, трехмерные диаграммы, функция совместного редактирования документов и многое другое.Excel 4 вышла в свет весной 1992. Появление этой версии программы оказало значительное влияние на рост популярности Windows. Excel 4 обладала множеством новых функций. Кроме того, эта версия была значительно удобнее в использовании, и теперь начинающие пользователи могли достаточно быстро освоить незнакомую для них программу.
В начале 1994 года на рынке появилась Excel 5. В этой версии было огромное количество новых средств, включая многолистные книги и новый макроязык Visual Basic for Application (VBA). Как и предшествующая версия, Excel 5 получала наилучшие отзывы во всех отраслевых изданиях.
Excel 95 (также известная как Excel 7) выпущена летом 1995 года. Внешне эта версия напоминала предыдущую (в Excel 95 появилось лишь несколько новых средств). Однако появление этой версии все же имело большое значение, поскольку в Excel 95 впервые был использован более современный 32-битовый код. В Excel 95 и Excel 5 используется один и тот же формат файлов.
Excel 97 (также известная как Excel 8) значительно усовершенствована по сравнению с предыдущими версиями. Изменился внешний вид панелей инструментов и меню, справочная система теперь организована на качественно новом уровне, количество строк рабочей книги было увеличено в четыре раза. Среда программирования Excel (VBA) значительно усовершенствована. Кроме того, справка по VBA для русской локали была на русском языке. В Excel 97 появился новый формат файлов, а так же увеличен рабочий лист до 65536 строк и 256 столбцов.
Excel 2000 (также известная как Excel 9) появилась в июне 1999 года. Эта версия характеризовалась незначительным расширением возможностей. Немаловажным
преимуществом новой версии стала возможность использования HTML в качестве универсального формата файлов. В Excel 2000 конечно же поддерживался и стандартный двоичный формат файлов, совместимый с Excel 97.— это на самом деле Excel 10. Вы, конечно, думаете, что это — десятая версия программы. Подумайте хорошенько. Microsoft— очень успешная компания, однако у них
всегда были проблемы с нумерацией программных продуктов. В действительности, Excel 2002 — восьмая версия Excel для Windows.Эту версию программы Excel 2002 выпустили в июне 2001 года. Она составляет часть пакета Microsoft Office XP. В этой версии присутствует несколько новых функций, предназначенных прежде всего для начинающих пользователей Excel. Основным нововведением Excel 2002 является возможность сохранения результатов работы в случае аварийного завершения программы и восстановления файлов поврежденной рабочей книги, над которой вы когда-то работали. В этой версии Excel появляется также фоновая проверка формул, а также новые инструментальные средства отладки. Многие из этих версий Excel имели несколько выпусков. Например, компания Microsoft создала два сервисных пакета для Excel 97 (SR-1 и SR-2). Эти выпуски помогли решить многие проблемы, возникшие при эксплуатации рассматриваемого приложения.
Самая популярная версия программы. Наилучшие сочетания функционала и интерфейса. Неудивительно, что многие используют её до сих пор.
Эта версия вышла в продажу в июле 2006-го года. Релиз отличался от уже привычного нам интерфейса Excel радикально. Появилась лента (Ribbon) и панель быстрого доступа. Кроме того функционал Excel расширился на несколько новых функций, таких как СУММЕСЛИМН(). Революционным так же явилось решение разработчиков увеличить рабочий лист до 1 048 576 строк и 16 384 столбцов, а так же применение новых (четырёхбуквенных) обозначений расширения файлов.
Суеверные руководители MS решили не присваивать 13-й номер очередной версии, а сразу перепрыгнули на 14-й. В октябре 2009-го года началось бесплатное распространение бета версий очередного релиза. Из интересных нововведений это Sparkliness (микрографики в ячейке), Slies (срезы сводной таблицы) и надстройка PowerPivot, для работы с 100 000 000-и строк.
Тестовая версия программы была презентована 16-го июля 2012-го года. Лента и панель быстрого доступа были оформлены полностью по новому (Метро-интерфейс). Кроме того, функционал Excel расширился на несколько новых функций, таких как ЕФОРМУЛА(), Ф.ТЕКСТ() и ЛИСТ().
История создания. История Microsoft Excel История создания и развития программы ms excel
В любой структуре есть минимальная единица информации. Например, весь мир состоит из атомов. Вот такой минимальной единицей информации в Excel является ячейка. Внутри ячейки есть отдельные буквы. Но логика работы Excel опирается на это основное понятие — ячейка. Ячейки собираются в листы. Лист в Excel это набор ячеек. Книга это набор листов. В нашем понятии «книга» — это файл. И в понятии Excel «книга» — это файл. Один файл это одна книга. Рабочая область — набор файлов или книг. Для удобства работы несколько книг со связанными рабочими областями можно объединить в рабочую область и у нас будет ощущение одного файла.
Выделить одну ячейку просто, щелкаете по ней мышкой и она выделена. Вокруг ячейки возникнет черный квадрат. Но выделять можно и несколько ячеек сразу. Выделяются они, используя левую кнопку мыши и две клавиши на клавиатуре.
Первый способ — это выделение с использованием клавиши Shift. Выделяете левую верхнюю ячейку необходимого диапазона, нужно нажать клавишу Shift и не отпускать ее правый нижний угол диапазона. После чего и кнопку мыши, и клавишу надо отпустить. Обратите внимание на то, что если выделять несколько диапазонов, прошлое выделение снимается.
Второй способ — это использовать клавишу Ctrl. Она позволяет выделять сложные диапазоны. Пользоваться ей легко. Выделите первую ячейку нажмите Ctrl и, не отпуская ее, выделяйте другие ячейки в любом месте таблицы.
Так же можно выделить целиком строку или столбец, кликнув мышью на их заголовок.
Возможности Excel
Excel-программный продукт с богатыми возможностями. который можно использовать на многих уровнях. Скорее всего, вам не понадобятся все возможности этой программы, но неплохо хотя бы иметь представление о том, что они позволяют делать. Это нужно, скажем, для того, чтобы вы не завивались поиском другого программного продукта, не знай о том, что Excel способна выполнить поставленную перед вами задачу.
Файлы Excel , называемые книгами, могут состоять из произвольного числа отдельных листов. Это могут быть рабочие листы или листы диаграмм. Данная возможность позволяет легче упорядочить работу. Например, можно сохранять все таблицы, расположенные на разных рабочих листах и относящиеся к одному проекту, в отдельной рабочей книге.
В Excel можно работать с несколькими файлами одновременно; при этом вовсе не обязательно закрывать один файл, если вам нужно заглянуть в другой. Это свойство — многооконный интерфейс. упрощает процесс обмена информацией между таблицами в разных рабочих книгах. Excel позволяет открыть столько файлов, сколько нужно.
В Excel имеется собственный формат файлов, обозначаемый расширением XLS в имени файла. Кроме того, в Excel можно читать файлы, созданные в других программах электронных таблиц, таких как Lotus 1-2-3 и Quanro Pro. Можно также читать текстовые файлы, файлы dBASE и документы в формате HTML.
Стоит отметить, что компьютерная документация становится все лучше и лучше. В прошлом пользователь был счастлив, если в руководстве, прилагаемом к программному обеспечению, точно описывались все его возможности. В настоящее время происходит отказ от печатной документации в пользу электронной справочной системе. Это означает, что вы можете получить любую справку на экране компьютера, работая в Excel. Электронная справочная таблица Excel хорошо продумана и детально разработана.
1. Помощник наблюдает за вашими действиями и дает советы, которые могут помочь вам сэкономить время. Вы можете просмотреть эти советы в любое время.
2. Предоставляет справочную информацию по конкретным вопросам работы с программой (например, по созданию диаграмм).
3. При вводе неправильной формулы в большинстве случаев предлагает вариант её исправления.
4. Предлагает простой способ поиска справочной информации по конкретной теме. Для этого достаточно ввести вопрос, и Помощник предложит список подходящих тем. Помощник появляется каждый раз, когда вам необходима помощь.
Excel, вероятно, самая простая в использовании программа электронных таблиц. Многие её возможности были специально разработаны для того, чтобы и начинающие, и профессиональные пользователи могли выполнять повседневные задачи просто и быстро. При выполнении определённых процедур программа ведет шаг за шагом, основные команды редактирования и форматирования просты и понятны. Например, чтобы изменить любой атрибут форматирования ячейки или диапазона, достаточно воспользоваться только одним диалоговым окном, а чтобы открыть контекстное меню, нужно щелкнуть правой кнопкой мыши на соответствующем элементе.
Одна из преимуществ Excel — способность работать со списками, находящими на рабочем столе. Эта возможность позволяет с легкостью сортировать, фильтровать, суммировать и обрабатывать данные рабочего листа.
Использование ссылок
Ссылка однозначно определяет ячейку или группу ячеек рабочего листа. С помощью ссылок можно использовать в формуле данные, находящиеся в различных местах рабочего листа, а также значение одной и той же ячейки в нескольких формулах. Можно также ссылаться на ячейки, находящиеся на других листах рабочей книги, в другой рабочей книге, или даже на данные другого приложения. Ссылки на ячейки других рабочих книг называются внешними. Ссылки на данные в других приложениях называются удаленными.
Распространение формул
Помимо копирования и перемещения формулу можно распространить на часть строки или столбца. При этом происходит изменение относительных ссылок. Для распространения формулы необходимо выполнить следующие действия:
· Установите курсор в ячейку с формулой.
· Подтвердить указатель мыши к маркеру заполнения. Изображение указателя изменяется на черный крестик.
· Нажать левую кнопку мыши и, удерживая ее нажатой, перемещайте курсор до нужного места. Для завершения распространения формулы отпустить кнопку.
Необходимо отметить, что Excel выводит в ячейку значение ошибки, когда формула для этой ячейки не может быть правильно вычислена. Если формула содержит ссылку на ячейку, которая содержит значение ошибки, то эта формула также будет выводить значение ошибки.
Работа с мастером функций.
Мастер функций – это программа, которая помогает быстро создать или отредактировать формулу с использованием, так называемых встроенных функций MS Excel. Встроенные функции – это заранее определенные формулы, которые выполняют вычисления по заданным величинам, называемым аргументами, и в указанном порядке. Структура функции начинается с указания имени функции, затем в скобках указываются аргументы, отделяющиеся друг от друга точками с запятыми. Список аргументов может состоять из чисел, текста, логических величин (например, ИСТИНА или ЛОЖЬ), массивов, значений ошибок (например, #Н/Д) и ссылок на отдельные ячейки или диапазоны. Кроме того, аргументы могут быть как константами, так и формулами. Эти формулы, в свою очередь, могут содержать другие функции.
Поскольку некоторые формулы и их комбинации встречаются очень часто, то программа Excel предлагает более 400 заранее запрограммированных формул, которые называются функциями. Все функции разделены по категориям, чтобы в них было проще ориентироваться. Встроенный Мастер функций помогает на всех этапах работы правильно применять функции. Он позволяет построить и вычислить большинство функций за два шага. В программе имеется упорядоченный по алфавиту полный список всех функций, в котором можно легко найти функцию, если известно ее имя; в противном случае следует производить поиск по категориям.
Многие функции различаются очень незначительно, поэтому при поиске по категориям полезно воспользоваться краткими описаниями функций, которые предлагает Мастер функций. Функция оперирует некоторыми данными, которые называются ее аргументами. Аргумент функции может занимать одну ячейку или размещаться в целой группе ячеек. Мастер функций оказывает помощь в задании любых типов аргументов.
Для вызова мастера функций необходимо нажать кнопку Вставка функции на стандартной панели инструментов, выполнить команду Вставка/Функция или воспользоваться комбинацией клавиш . После этого появится диалоговое окно Мастер функций, в котором можно выбрать нужную функцию.
Диалоговое окно Мастер функций (см. рис.1) состоит из двух связанных между собой списков: Категория и Функция. При выборе одного из элементов списка Категория в списке Функция появляется соответствующий ему перечень функций. В Microsoft Excel функции разбиты на 12 категорий. Категория 10 недавно использовавшихся постоянно обновляется. Она напоминает стековую память: новая вызванная функция, которая в этом списке еще не числилась, займет первую строку, вытеснив тем самым последнюю функцию.
Рис.1. Диалоговое окно «Мастер функций»
При выборе какой-либо функции в нижней части диалогового окна появляется краткое ее описание. Нажав кнопку ОК или клавишу , можно вызвать панель выделенной функции.
В русифицированной версии Microsoft Excel имена большинства функций, исключая небольшую часть (18) математических, записываются на русском языке, например, =СУММ(), =ЕСЛИ(), =ВЕРОЯТНОСТЬ(), и т.п. Распространенной ошибкой начинающих является ввод на русском не только имен функций, но и аргументов.
Microsoft Excel
В MS Excel имеется возможность графического представления данных в виде диаграммы. Диаграммы связаны с данными листами, на основе которых они были созданы, и изменяются каждый раз, когда изменяются данные на листе.
Диаграммы могут использовать данные несмежных ячеек. Такие же диаграммы может использовать данные сводной таблицы.
Создание диаграммы
Одним из самых впечатляющих достоинств MS Ехсеl является способность превращать абстрактные ряды и столбцы чисел в привлекательные, информативные графики и диаграммы. Ехсеl поддерживает 14 типов различных стандартных двух- и трехмерных диаграмм. При создании новой диаграммы по умолчанию в Excel установлена гистограмма.
Диаграммы — это удобное средство графического представления данных. Они позволяют оценить имеющиеся величины лучше, чем самое внимательное изучение каждой ячейки рабочего листа. Диаграмма может помочь обнаружить ошибку в данных.
Для того чтобы можно было построить диаграмму, необходимо иметь, по крайней мере, один ряд данных. Источником данных для диаграммы выступает таблица Excel.
1.5.2. Специальные термины, применяемые при построении диаграмм
Ось X называется осью категорий и значения, откладываемые на этой оси, называются категориями.
Значения отображаемых в диаграмме функций и гистограмм составляют ряды данных. Ряд данных – последовательность числовых значений. При построении диаграммы могут использоваться несколько рядов данных. Все ряды должны иметь одну и ту же размерность.
Легенда – расшифровка обозначений рядов данных на диаграмме.
Тип диаграммы влияет на ее структуру и предъявляет определенные требования к рядам данных. Так, для построения круговой диаграммы всегда используется только один ряд данных.
Изменение подписей значений
Для изменения подписей значений на диаграмме необходимо один раз щелкнуть мышью изменяемую подпись, чтобы выбрать подписи для всего ряда, еще один щелчок позволить выбрать отдельную подпись значения.
Затем следует ввести новый текст или значение и нажать клавишу Enter. Если изменить текст подписи прямо на диаграмме, то связь с ячейкой листа будет потеряна.
Поставленная цель по созданию компьютерной модели тела, брошенного под углом к горизонту в электронных таблицах Microsoft Excel достигнута.
Все задачи решены:
1. проведен анализ модели бросания мячика в стенку, расположенную на известном расстоянии с целью выявления параметров системы, необходимых для достижения поставленной цели, и связей между ними;
2. разработан процесс построения компьютерной модели физического процесса в электронных таблицах Microsoft Excel;
3. появилась возможность провести более точную оценку попадания мячика в стенку, расположенную на известном расстоянии, и проводить анализ траекторий его движения для нескольких углов бросания, построенных на одной диаграмме.
По итогам произведенной работы выявлена актуальность использования электронных таблиц MicroSoft Excel для производства расчетов малой и средней сложности. В связи со скоростью разработки таблиц — шаблонов, простоты и понятности интерфейса, удобного вывода на печать, наличие широкого инструментария для вставки фильтров, поиска по таблице, возможности защитить документ от несанкционированного удаления данных, применения математических, физических, логических формул программа Excel подходит лучше всего. По проведенным тестам скорость обработки данных, удовлетворяет скорости нужной для обработки больших объемов информации, причем в удобной, визуально понятной форме.
Программа MicroSoft Excel полностью справилась с решением поставленных задач по созданию таблицы для расчета движения тел.
На основании проделанной работы можно сделать следующие выводы:
1. Решение физических задач с помощью табличного процессора Microsoft Excel намного проще и быстрее.
2. В электронных таблицах Microsoft Excel предоставляет пользователю множество возможностей.
3. В электронных таблицах Microsoft Excel имеется множество различных функций, упрощающих решение каких – либо задач из различных областей.
4. В электронных таблицах Microsoft Excel можно строить графики и диаграммы, с помощью которых можно наглядно показать результат решения.
5. Табличный процессор Microsoft Excel является удобным средством моделирования.
1. Э.В. Бурсиан. Физика. 100 задач для решения на компьютере. Учебное пособие. – СПб.: ИД «МиМ», 1997.
2. Угринович Н.Д. Исследование информационных моделей. Элективный курс: учебное пособие – М.: БИНОМ. Лаборатория знаний, 2006.
3. Угринович Н.Д. Информатика и информационные технологии: учебник для 10-11 классов – М.: БИНОМ. Лаборатория знаний, 2002.
4. Пак Н.И. Информатика. 2004.
5. Могилев А.В.Информатика. М. :Издательский центр «Академия».2003.
6. Леонтьев В.П. Новейшая энциклопедия персонального компьютера. 2003.
7. Кушнеренко А.Г.Основы информатики и вычислительной техники.М.:Просвещение.1991.
8. Кушнеренко А.Г.Новые информационные технологии.М.:Дрофа.2003.
9. Информатика. Энциклопедический словарь для начинающих. Под ред.
10. Информатика. Задачник-практикум. Т-2. под ред. И. Г. Семакина,
11. Е. К. Хеннера. М., Бином. Лаборатория Знаний, 2002 г
12. Д. А. Поспелова. М., Педагогика-Пресс 1994 г
С появлением всё более мощных вычислительных ресурсов человечеству открываются возможности по моделированию сложнейших процессов, связанных как с деятельностью человека, так и с природными явлениями. Использование программы моделирования предоставляет неоспоримую экономическую выгоду для производства, так как благодаря вычислительной мощности современных компьютеров моделирование происходит гораздо быстрее во времени, чем реальные процессы. Кроме того, используя современные программные средства визуализации, возможно, получить очень наглядное представление результатов моделирования физических процессов в виде различных диаграмм и графиков.
Значение информатики в значительной степени проявляется именно через внедрение компьютерного моделирования в различные научные и прикладные области: математику и физику, технику, биологию и медицину, экономику, управление и многие другие. С помощью компьютерного моделирования решаются многие научные и производственные задачи. Гибким инструментом для компьютерного моделирования является MS Excel.
Возможности электронных таблиц Microsoft Excel весьма многогранны. Всем известно, что Excel является мощным вычислительным инструментом, позволяющим производить простые и сложные расчеты в различных областях человеческой деятельности: математике, физике, инженерных науках, экономике, технологии.
Электронные таблицы Microsoft Excel (входит в пакет Microsoft Office) – программа, предназначенная, прежде всего, для экономических расчетов.
Выбор этой программы для обучения компьютерному моделированию обусловлен следующими причинами:
Несмотря на экономическую направленность, Excel является весьма мощной программой, включающей в себя более 400 функций, в том числе математических, статистических, инженерных, логических и др.
Интуитивно-понятный «дружественный» интерфейс, подробная справка на русском языке и широкая интеграция и унификация с другими программами от Microsoft делают освоение и использование Excel легким, удобным и приятным. Благодаря этому в Excel можно заниматься физикой на компьютере, а не информатикой на примерах физики. В отличие от сложных профессиональных математических и физических пакетов, требующих длительного изучения, Excel осваивается за одно занятие и позволяет в дальнейшем заниматься исключительно физикой, не отвлекаясь на изучение самой программы.
В профессиональных математических и физических пакетах, чтобы что-либо сделать необходимо, знать какую команду ввести или какую кнопку нажать, но нет необходимости понимать, как именно программа моделирует данный процесс. В Excel не заданы физические модели – их надо задавать самим, поэтому для моделирования физических процессов требуется глубокое понимание физического и математического смысла формул и используемых моделей. Верно и обратное: освоение компьютерного моделирования физических процессов в Excel ведет к более глубокому пониманию этих процессов, а так же физического и математического смысла используемых формул и моделей.
Цель работы: создать и исследовать модель физического процесса в Microsoft Excel.
1. Подобрать список литературы.
2. Исследовать возможности табличного процессора Excel.
3. Построить физическую модель в табличном процессоре Microsoft Excel.
Объект исследования: моделирование физических процессов в табличном процессоре Microsoft Excel.
Предмет исследования: компьютерная модель физического процесса, созданная в табличном процессоре Microsoft Excel.
ГЛАВА 1. ХАРАКТЕРИСТИКА РАБОТЫ В ЭЛЕКТРОННЫХ ТАБЛИЦАХ
История возникновения электронных таблиц Excel
Для работы с электронными таблицами были созданы специальные программы, называемые табличными процессорами. Изначально эти программы могли обрабатывать исключительно двухмерные таблицы, включающие числовые данные, но затем появились продукты, обладавшие, помимо этого, возможностью включать текстовые, графические и другие мультимедийные элементы. В “арсенал” табличных процессоров включены мощные математические функции, позволяющие проводить сложные статистические, финансовые и иные вычисления.
На уровне теории концепция электронных таблиц была разработана американским ученым Ричардом Маттессичем. Соответствующая публикация носила название Budgeting Models and System Simulation и была опубликована в далеком 1961 году. В последующем эту концепцию развили и дополнили Пардо и Ландау, которые даже подали заявку на оформление патента. И хотя изначально эта заявка не была удовлетворена, авторы изобретения отстояли права на свое детище через суд.
На основе разработанной теории в 1979 году появился первый табличный процессор. Эта была программа VisiCalc, созданная Дэном Бриклином совместно с Бобом Фрэнк – стоном, и предназначавшаяся для платформы Apple. Именно появление подобной программы во многом обусловило превращение компьютера из дорогостоящей “игрушки” в незаменимого помощника бухгалтера.
Впоследствии на рынке появились многочисленные табличные процессоры, к которым можно отнести SuperCalc, Microsoft MultiPlan, Quattro Pro, Lotus 1-2-3, Microsoft Excel, OpenOffice.org Calc, AppleWorks, но программа VisiCalc была первой, и именно с нее все началось.
Официальное появление Excel в составе пакета MS Office -1991 год, именно эта дата знаменует начало эпохи Excel.
Excel – это широко распространенная компьютерная программа. Нужна она для проведения расчетов, составления таблиц и диаграмм, вычисления простых и сложных функций.
Всем привет. Это первая статья из серии о Microsoft Excel. Сегодня вы узнаете:
- Что такое Microsoft Excel
- Для чего он нужен
- Как выглядит его рабочее пространство
В следующей статье мы еще немного обсудим рабочую среду программы. А вот в третьем посте этого цикла уже будем , так что самое интересное совсем близко! В дальнейшем мы будем ориентироваться на практику, поскольку она интересна всем.
Для усвоения этой и последующих статей цикла, вам понадобится компьютер с Microsoft Office, в том числе Excel. Если у Вас еще нет этой программы, ее можно купить, например, здесь .
Что такое Excel, для чего его использовать
Рабочее пространство Excel
Кстати, вы можете размещать данные в произвольном порядке на листе, программа не ограничивает вас в свободе действий. А значит, можно легко создавать различные , отчеты, формы, макеты и , выбрать оптимальное место для .
А теперь давайте взглянем на окно Excel в целом и разберемся с назначением некоторых его элементов:
В 1982 году Microsoft запустила на рынок первый электронный табличный процессор Multiplan, который был очень популярен на CP/M системах, но на MS-DOS системах он уступал Lotus 1-2-3. Первая версия Excel предназначалась для Mac и была выпущена в 1985 году, а первая версия для Windows была выпущена в ноябре 1987 года. Lotus не торопилась выпускать Lotus 1-2-3 под Windows, и Excel с 1988 года начала обходить по продажам Lotus 1-2-3, что в конечном итоге помогло Microsoft достичь позиций ведущего разработчика программного обеспечения. Microsoft укрепляла свое преимущество с выпуском каждой новой версии, что имело место примерно каждые два года. Текущая версия для платформы Windows — Excel 12, также известная как Microsoft Office Excel 2007. Текущая версия для платформы Mac OS X — Microsoft Excel 2008.
В начале своего пути 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 является мощным дополнением к приложению, которое в более поздних версиях стало включать полную интегрированную среду разработки. Можно создать VBA-код, повторяющий действия пользователя, позволяя таким образом автоматизировать простые задачи. VBA позволяет создавать формы для общения с пользователем. Язык поддерживает использование (но не создание) DLL от ActiveX; более поздние версии позволяют использовать основы объектно-ориентированного программирования.
Функциональность VBA сделала Excel мишенью для макровирусов. Это было серьезной проблемой до тех пор, пока антивирусные продукты не стали их обнаруживать. Microsoft с опозданием приняла меры для уменьшения риска, добавив возможность полностью отключить макросы, включить макросы при открытии документа.
Электронная таблица — вещь непростая, хотя мы воспринимаем существование подобных приложений как нечто само собой разумеющееся. В те времена, когда подобных программ не существовало, люди использовали громоздкие вычислительные машины или калькуляторы, часами работая над заданиями, выполнение которых сегодня занимает всего несколько минут.
Сначала была VisiCalc
Вкратце об основных версиях Excel для Windows.
Исходная версия Excel для Windows — Excel 2 — появилась в конце 1987 года. Эта версия программы носила название Excel 2, поскольку первая версия была разработана для Macintosh. В то время Windows еще не была широко распространена. Поэтому к Excel прилагалась оперативная версия Windows — операционная система, обладавшая функциями, достаточными для работы в Excel. По сегодняшним стандартам эта версия Excel кажется недоработанной.
В 1990 году компания Microsoft выпустила Excel 3 для Windows. Эта версия обладала более совершенными инструментами и внешним видом. В Excel 3 появились панели
инструментов, средства рисования, режим структуры рабочей книги, надстройки, трехмерные диаграммы, функция совместного редактирования документов и многое другое.Excel 4 вышла в свет весной 1992. Появление этой версии программы оказало значительное влияние на рост популярности Windows. Excel 4 обладала множеством новых функций. Кроме того, эта версия была значительно удобнее в использовании, и теперь начинающие пользователи могли достаточно быстро освоить незнакомую для них программу.
В начале 1994 года на рынке появилась Excel 5. В этой версии было огромное количество новых средств, включая многолистные книги и новый макроязык Visual Basic for Application (VBA). Как и предшествующая версия, Excel 5 получала наилучшие отзывы во всех отраслевых изданиях.
Excel 95 (также известная как Excel 7) выпущена летом 1995 года. Внешне эта версия напоминала предыдущую (в Excel 95 появилось лишь несколько новых средств). Однако появление этой версии все же имело большое значение, поскольку в Excel 95 впервые был использован более современный 32-битовый код. В Excel 95 и Excel 5 используется один и тот же формат файлов.
Excel 97 (также известная как Excel 8) значительно усовершенствована по сравнению с предыдущими версиями. Изменился внешний вид панелей инструментов и меню, справочная система теперь организована на качественно новом уровне, количество строк рабочей книги было увеличено в четыре раза. Среда программирования Excel (VBA) значительно усовершенствована. Кроме того, справка по VBA для русской локали была на русском языке. В Excel 97 появился новый формат файлов, а так же увеличен рабочий лист до 65536 строк и 256 столбцов.
Excel 2000 (также известная как Excel 9) появилась в июне 1999 года. Эта версия характеризовалась незначительным расширением возможностей. Немаловажным
преимуществом новой версии стала возможность использования HTML в качестве универсального формата файлов. В Excel 2000 конечно же поддерживался и стандартный двоичный формат файлов, совместимый с Excel 97.— это на самом деле Excel 10. Вы, конечно, думаете, что это — десятая версия программы. Подумайте хорошенько. Microsoft— очень успешная компания, однако у них
всегда были проблемы с нумерацией программных продуктов. В действительности, Excel 2002 — восьмая версия Excel для Windows.Эту версию программы Excel 2002 выпустили в июне 2001 года. Она составляет часть пакета Microsoft Office XP. В этой версии присутствует несколько новых функций, предназначенных прежде всего для начинающих пользователей Excel. Основным нововведением Excel 2002 является возможность сохранения результатов работы в случае аварийного завершения программы и восстановления файлов поврежденной рабочей книги, над которой вы когда-то работали. В этой версии Excel появляется также фоновая проверка формул, а также новые инструментальные средства отладки. Многие из этих версий Excel имели несколько выпусков. Например, компания Microsoft создала два сервисных пакета для Excel 97 (SR-1 и SR-2). Эти выпуски помогли решить многие проблемы, возникшие при эксплуатации рассматриваемого приложения.
Самая популярная версия программы. Наилучшие сочетания функционала и интерфейса. Неудивительно, что многие используют её до сих пор.
Эта версия вышла в продажу в июле 2006-го года. Релиз отличался от уже привычного нам интерфейса Excel радикально. Появилась лента (Ribbon) и панель быстрого доступа. Кроме того функционал Excel расширился на несколько новых функций, таких как СУММЕСЛИМН(). Революционным так же явилось решение разработчиков увеличить рабочий лист до 1 048 576 строк и 16 384 столбцов, а так же применение новых (четырёхбуквенных) обозначений расширения файлов.
Суеверные руководители MS решили не присваивать 13-й номер очередной версии, а сразу перепрыгнули на 14-й. В октябре 2009-го года началось бесплатное распространение бета версий очередного релиза. Из интересных нововведений это Sparkliness (микрографики в ячейке), Slies (срезы сводной таблицы) и надстройка PowerPivot, для работы с 100 000 000-и строк.
Тестовая версия программы была презентована 16-го июля 2012-го года. Лента и панель быстрого доступа были оформлены полностью по новому (Метро-интерфейс). Кроме того, функционал Excel расширился на несколько новых функций, таких как ЕФОРМУЛА(), Ф.ТЕКСТ() и ЛИСТ().
Microsoft Excel (Mac OS X)

Microsoft Excel 2008Тип Разработчик Операционная система Последняя версия Лицензия Сайт Microsoft Excel (также иногда называется Microsoft Office Excel ) — программа для работы с электронными таблицами , созданная корпорацией Microsoft для Microsoft Windows , Windows NT и Mac OS . Она предоставляет возможности экономико-статистических расчетов, графические инструменты и, за исключением Excel 2008 под Mac OS X , язык макропрограммирования VBA (Visual Basic for Application ). Microsoft Excel входит в состав Microsoft Office и на сегодняшний день Excel является одним из наиболее популярных приложений в мире.
История
Функциональность 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
- Замечание: Версия 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 (2 14) строк. Версии 8.0-11.0 могли справиться с 65 536 (2 16) строк и 256 колонками (2 8). Версии 12.0 и 14.0 обрабатывают до 1 048 576 (2 20) строк и 16 384 (2 14) колонок.
Форматы файлов
В Microsoft Excel вплоть до 2003 версии включительно, использовался свой собственный бинарный формат файлов (BIFF) в качестве основного. 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). Этот код пишется с использованием отдельного от таблиц редактора. Управление электронной таблицей осуществляется посредством объектно-ориентированной модели кода и данных. С помощью этого кода данные входных таблиц будут мгновенно обрабатываться и отображаться в таблицах и диаграммах (графиках). Таблица становится интерфейсом кода, позволяя легко работать изменять его и управлять расчётами.
Парольная защита MS Excel
Защита Microsoft Excel предоставляет несколько типов различных паролей:
Все пароли, кроме пароля для открытия документа, можно удалить мгновенно, вне зависимости от версии MS Excel, в которой был создан документ. Эти типы паролей в первую очередь служат для коллективной работы над документом. При их использовании документ не шифруется, а в документе сохраняется хэш от установленного пароля. Хотя при использовании пароля для защиты книги документ шифруется на известном пароле «VelvetSweatshop» , это не добавляет документу дополнительной защиты. Единственным типом пароля который может помешать злоумышленнику получить доступ к документу является «пароль для открытия» , но криптостойкость такой защиты сильно зависит от версии MS Excel, в которой был создан документ.
В MS Excel версии 95 и ранее, «пароль на открытие» преобразовывается в 16-битный ключ, который взламывается мгновенно. В MS Excel 97/2000 пароль преобразовывался уже в 40-битный ключ, который на современном оборудовании также может быть взломан очень быстро. К тому же программы для взлома паролей могут перебирать сотни тысяч паролей в секунду, что позволяет не только расшифровать документ, но и найти оригинальный пароль. В MS Excel 2003 / XP ситуация немного улучшилась — пользователь может выбрать практический любой алгоритм шифрования, доступный в системе (CryptoServiceProvider). Но по умолчанию осталась все та же защита MS Excel 97/2000. Для пользователей, привыкшим доверять поведению программ по умолчанию, это означает отсутствие стойкой защиты на их документы.
Ситуация кардинально изменилась в MS Excel 2007 — для шифрования стал использоваться современный алгоритм AES с ключем в 128 бит, а для получения ключа применяться 50000 кратное использование хэш-функции SHA1 , что уменьшило скорость перебора до сотен паролей в секунду. В MS Excel стойкость защиты по умолчанию была увеличена еще в 2 раза, благодаря применению уже 100000 кратного SHA1 преобразования пароля в ключ. Вывод: на данный момент стойкую защиту обеспечивает только документы, сохраненные в формате Office 2007 \ 2010 с установленным на них стойким «паролем на открытие» .
Критика
Общая критика табличных процессоров применима и к Excel. Специфичные предметы критики в Excel — это точность, проблемы с датами и ошибки отображения Excel 2007.
Точность
Из-за того, что Excel работает на основе расчетов с плавающей запятой , статистическая точность Excel подвергается критике. Сторонники Excel заявляют в ответ, эти ошибки проявляются лишь в особых условиях специально подобранных исходных данных, которые затрагивают относительно небольшое число пользователей, и с низкой вероятностью могут встретиться на практике. Для версий 97, 2000, 2002 зафиксированы ошибки при выполнении функции MOD (деление с остатком) при определённых аргументах, где функция вместо результата возвращает ошибку #NUM!.
Проблемы с датой
В версиях Excel до 2007 включительно 1900 год ошибочно считался високосным . Ошибка возникла в Lotus 1-2-3 и была намеренно внесена в Excel для совместимости и поддерживалась для обратной совместимости.
Ошибки отображения Excel
Скриншот Microsoft Excel 2007, показывающий ошибку отображения 65535
22 сентября 2007 года было сообщено , что в определённых ситуациях Excel 2007 будет показывать неправильные результаты. В частности, для тех пар чисел, чье произведение равно 65535 (например, 850 и 77,1), Excel отобразит в качестве итога 100000. Это происходит с примерно 14,5 % таких пар. Кроме того, если к результату добавить единицу, Excel выведет итог 100001. Однако, если вычесть из итога единицу, на дисплее отобразится правильный результат 65534. (Также, если итог умножить или разделить на 2, будут отображены 131070 и 32767,5 соответственно.)
Microsoft сообщила в блоге Microsoft Excel , что проблема существует в отображении шести конкретных значений с плавающей запятой между 65534,99999999995 и 65535 и шести значений между 65535,99999999995 и 65536 (не включая границ). Любые расчеты, результат которых равен одному из двенадцати значений, будут отображаться неправильно. Фактические данные, хранящиеся и передающиеся в другие ячейки, верны, неверно лишь отображение значения. Ошибка появилась в Excel 2007 и не существует в предыдущих версиях. 9 октября 2007 года Microsoft выпустила патч , исправляющий проблему. Он вошёл и в состав исправлений Service Pack 1.
Язык DAX — понятие, для чего, для кого, какие задачи решает
DAX( Data Analysis Expressions) — это язык функций и формул, который входит в состав нескольких приложений от компании Microsoft, а если быть точнее, то в приложение Power BI, в надстройку Excel (Powerpivot) и в SSAS Tabular (SQL Server).
MS DAX — это функциональный язык запросов, который целиком и полностью состоит только из встроенных в него функций. В DAX вы не сможете создать какие-либо свои функции, циклы или что-то еще, что можно создавать в языках программирования. Ведь DAX — это не язык программирования, это именно функциональный язык от Microsoft, при помощи которого, у вас имеется возможность на основе встроенных в него функций создавать свои формулы для расчета необходимых вычислений, обогащая вашу исходную модель данных. И на основе всего этого, в итоге, создавать те самые интерактивные отчеты в Power BI и Excel (Powerpivot).
Если говорить кратко, то DAX позволяет обращаться (создавать запросы) к исходной модели данных, брать из нее необходимые отфильтрованные данные и производить с ними вычисления. А затем, уже на основе этих вычислений, у Вас появляется возможность создавать интерактивные BI отчеты.
Язык DAX и Excel (Powerpivot)
Тем из вас, кто ранее пользовался обычным Excel, а сейчас переходит к работе с языком DAX, то для вас DAX может показаться достаточно знакомым и похожим на Excel. И это действительно так. Дело в том, что язык DAX изначально зародился из под Excel, а конкретнее, в 2010 году его представили на свет в рамках языка функций и формул для надстройки Excel — Power Pivot. И создатели DAX сделали все возможное, чтобы пользователям стандартного Экселя было легко перейти к работе с DAX. В DAX достаточно много функций, которые так или иначе похожи, или чем-то напоминают соответствующие функции в Excel.
Язык DAX и Power BI
Также, есть небольшое различие в языках DAX используемых в разных приложениях, например таких, как Power BI и Excel (Powerpivot). А конкретно, в DAX в Power BI имеется возможность создавать физически и сохранять в модели данных вычисляемые таблицы, чего в Excel (Powerpivot) по крайней мере, сейчас, пока сделать не получится. В Excel можно создавать некие виртуальные таблицы в составе самих формул DAX, но создать физически вычисляемые таблицы и потом сохранить их в модели данных нельзя. Поэтому, если вы только начинаете изучать язык DAX, то лучше всего, по моему мнению, это делать в приложении Power BI: во-первых, в Power BI в DAX можно легко создавать в модели данных вычисляемые таблицы; а во-вторых, само удобство использования DAX в Power BI намного лучше, ведь Power BI — это следующий технологический уровень в BI аналитике, после Excel, и именно поэтому, там процесс работы намного удобнее.
Где нужен DAX
Формулы DAX включают функции, операторы и значения для выполнения расширенных вычислений и запросов к данным в связанных таблицах и столбцах в табличных моделях данных. Они используются в показателях, вычисляемых столбцах, вычисляемых таблицах и безопасности на уровне строк.
Рассмотрим основные атрибуты по порядку:
1. МерыМеры — это формулы динамических вычислений, результаты которых меняются в зависимости от контекста.
Меры используются в некоторых наиболее распространенных методах анализа данных. Простые итоговые значения, такие как суммы, средние значения, минимумы, максимумы и счетчики, можно задать в области Поля. Вычисленные результаты мер всегда изменяются в ответ на взаимодействие с отчетами, что обеспечивает быстрый и динамический просмотр данных.
2. Вычисляемый столбец
Вычисляемый столбец — это столбец, который Вы добавляете в существующую таблицу (в конструкторе моделей), а затем создаете формулу DAX, которая определяет значения столбца. Если вычисляемый столбец содержит действительную формулу DAX, значения вычисляются для каждой строки сразу после ввода формулы. Затем значения сохраняются в модели данных в памяти.
Вычисляемые столбцы похожи на меры в том, что они строятся на формуле DAX, но их использование отличается. Меры часто используются в области Значения визуализации для вычисления результатов на основе других полей. Вычисляемые столбцы используются в качестве новых полей в строках либо в области оси, условных обозначений или группы визуализаций.
3. Вычисляемая таблица
Вычисляемая таблица — это вычисляемый объект, основанный на выражении формулы, полученном из всех или части других таблиц в той же модели.
В большинстве случаев вы создаете таблицы путем импорта данных в модель из внешнего источника данных. Но вычисляемые таблицы позволяют добавлять новые таблицы на основе данных, уже загруженных в модель. Вместо запроса и загрузки значений в столбцы новой таблицы из источника данных вы создаете формулу на языке DAX, которая определяет значения таблицы.
Описание миссии языка DAX
Итак, подводя итог всей статьи про краткое описание и знакомство с DAX, можно описать его некое предназначение: данный язык функций и формул является неким мостом между вашей исходной моделью данных и тем интерактивным отчетом, который вы в итоге хотите видеть и анализировать; этот функциональный язык запросов дает возможность обогатить исходную модель данных, создавая в ней новые вычисляемые таблицы, столбцы и разные меры (вычисления, на основе которых вы и будете изучать и анализировать всю информацию).