Программирование формул Excel

Введение
[править]Написание формул - весьма увлекательный процесс, почти программирование, но чисто с помощью функций.
Написание формул
[править]Любая формула должна начинаться с «=»:
=IF(A1 > 2; "ДА"; IF(B1+A1 < 10; "ДА"; "НЕТ"))
Это соответствует участку кода на VBA:
If cells(0, 0) > 2 Then
cells(0, 3) = "ДА"
Else
If cells(0, 0) + cells(1, 0) < 10 Then
cells(0, 3) = "ДА"
Else
cells(0, 3) = "НЕТ"
End If
End If
Относительность ячеек
[править]Изначально в формулах ячейки, на которые ссылаются формулы, имеют относительную адресацию. Это значит, что запоминаются координаты ячейки не относительно A1, а относительно той ячейки, в которой формула.
Для фиксации координаты по оси X или Y - для того, чтобы та или иная координата считалась от A1, нужно писать знак $ перед буквой или цифрой.
| Адрес ячейки | Что зафиксировано |
|---|---|
| A1 | ничего |
| $A1 | Столбец A. |
| A$1 | Строка 1. |
| $A$1 | И столбец A, и строка 1. |
Математические операции
[править]| Операция | Смысл |
|---|---|
| + | сумма |
| - | разность |
| * | умножение |
| / | деление |
| ^ | возведение в степень |
| %a | получение процента (делением числа a на 100) |
| SQRT(a) | квадратный корень из a |
Дополнительные операции
[править]| Операция | Смысл |
|---|---|
| SIN(a) | синус числа a |
| COS(a) | косинус числа a |
| TAN(a) | тангенс числа a |
| ASIN(a) | арксинус числа a |
| ACOS(a) | арккосинус числа a |
| ATAN(a) | арктангенс числа a |
Диапазоны и группы ячеек
[править]Любой диапазон можно описать следующим образом:
A1:G2
В диапазон попадут все ячейки, заключенные в прямоугольник, крайними ячейками которого являются A1 и G2. Тут ячейки могут быть любыми.
| Функция | Описание |
|---|---|
| SUMM(range) | Суммирует все значения ячеек диапазона range. |
| MIN(range) | Находит ячейку с минимальным значением в диапазоне. |
| MAX(range) | Находит ячейку с максимальным значением в диапазоне. |
| MIN(список ячеек) | Находит ячейку с минимальным значением из перечисленных через запятую ячеек. |
| MAX(список ячеек) | Находит ячейку с максимальным значением из перечисленных через запятую ячеек. |
Условия
[править]Условия описываются функцией IF, которая имеет такой вид:
IF(условие; команды, выполняющиеся при верности условия; команды, выполняющиеся при ложности условия)
После первой «;» в качестве команд может быть абсолютно любые функции. Например:
=IF(A1 > 2; SUMM(A1:C3); SUMM(A1:C6))
Функции AND, OR
[править]Эти две функции позволяют совершать логические операции объединения (AND) и сложения (OR). При AND результат будет TRUE (истина), только в том случае, если все условия выполнились. В OR результат будет TRUE только тогда, когда хотя бы одно условие выполнилось.
Так описывается AND:
AND(условие, ... , последнее условие)
Так описывается OR:
OR(условие, ... , последнее условие)
Например:
=IF(OR(A1>2; A1<-2); SUMM(A1:C3); SUMM(A1:C6))
Функции TRUE и FALSE
[править]Эти функции возвращают соответствующие названию логические значение. TRUE() - возвращает всегда истину, FALSE - ложь.