Как в эксель записать формулу: как написать формулу, как посчитать сумму, сложение с условием, счет строк и пр.
Содержание
Написание формул и выполнение вычислений в MS Excel
- Главная
- ПК
- Написание формул и выполнение вычислений в MS Excel
libre 4223
Запись формул, как правило, является наиболее часто повторяемым видом, работ при решении учебных задач расчетного характера. Здесь существует общее правило — для того чтобы указать компьютеру, что набираемые символы являются формулой, необходимо начать запись знаком равно. Синтаксис формул очень близок к естественной записи, за исключением того, что в формулу вместо числа записывается адрес ячейки, в которой находится это число.
Например, чтобы написать в Excel формулу 2+3, необходимо в любые две ячейки поместить числа 2 и 3. Если эти цифры помещены в ячейки А5 и С6, то электронная версия формулы примет вид =А5+С6. Записывать формулы можно в любом месте таблицы, кроме ячеек, содержащих исходные данные для вычислений (в примере ячейки А5 и С6).
Чтобы изменить порядок вычислений в формуле, воспользуйтесь скобками. Разрешается ставить только круглые скобки. Можно указывать любое число вложений одних скобок в другие, но при этом число открытых скобок должно равняться числу закрытых скобок.
Помимо простых арифметических действий, которые задаются одним из символов: » + «, » — «, » * «, » / «, пакет содержит большое число встроенных функций. Для их написания существует специальная мнемоника.
Например, натуральный логарифм гамма-функции записывается аббревиатурой ГАММАНЛОГ, математическая функция косинус записывается как КОС, логическая функция ЕСЛИ пишется в формуле словом ЕСЛИ.
Адреса ячеек, содержащих значения аргументов, указываются после имени функции в скобках. Если аргументом функции является диапазон чисел, то они перечисляются через знак » ; » — точка с запятой. Сплошной диапазон чисел указывается адресами двух крайних ячеек, разделенных знаком » : » — двоеточие.
Разрешается в одной записи использовать несколько поддиапазонов, разделяя их соответствующими знаками. Например, запись =СУММ(А8:С8;Е9:G9;К12) означает суммирование чисел, расположенных в ячейках А8, В8, С8, Е9, F9, G9 и К12. Чтобы облегчить запись встроенных функции, наберите знак «=», затем дайте команду «Вставка функция» из меню или соответствующей кнопкой панели инструментов.
Диалоговое окно мастера функций (рис. 1) содержит необходимую информацию о синтаксисе функции, и поэтому не требуется помнить правила ее написания. Ввод функции в этом случае в основном сводится к заданию адресов ячеек, хранящих значения аргументов.
Задавать адреса ячеек, входящих в формулу, можно, не только вводя с клавиатуры буквенно-цифровое обозначение адреса, но и указывая мышкой на одну ячейку или, в случае задания диапазона аргументов, отмечая блок ячеек, составляющих диапазон. Для этого убедитесь, что курсор находится в нужной строке диалогового окна, и отметьте в таблице одну ячейку или блок.
В первой строке диалогового окна отобразятся адреса отмеченных ячеек и появится еще одна строка. Щелкните в нее левой клавишей мыши. Если потребуется, повторите ввод данных или нажмите «ОК» для переноса данных из диалогового окна в активную ячейку. Рисунок 1 — Диалоговое окно «Вставка функции»
Редактирование информации в ячейках Excel
Для редактирования информации в ячейке используется строка формул. В ней отображается содержимое активной ячейки. Щелкните мышкой на любое место в строке формул и вставьте или сотрите нужный символ. Чтобы редактировать непосредственно в ячейке, сделайте ее активной и нажмите клавишу «F2».
Построение диаграмм и графиков Excel
Использование диаграмм и графиков в Excel позволяет иллюстрировать результаты решения учебных задач и делать отчеты по ним более наглядными и красочными. Отобразить в графическом виде содержимое ячеек можно с помощью команды «Мастер диаграмм«.
Выделите блок ячеек, щелкните мышкой на пиктограмму «Мастер диаграмм» (рис. 2) в кнопочном меню команд или в подменю команды «Вставка диаграмма». Действуйте в соответствии с рекомендациями «Мастера диаграмм». Рисунок 2 — Пиктограмма команды «Мастер диаграмм»
Обратите внимание на то, что многие диалоговые окна «Мастера диаграмм» имеют не одну закладку, а несколько. Внимательно просмотрите все закладки, последовательно задавайте нужные параметры диаграммы и контролируйте изменения в окне визуализации мастера.
После того как в диалоговом окне будут установлены требуемые параметры, перейдите к следующему окну (кнопка «Далее») или закончите работу с диаграммой (кнопка «Готово» или «Отмена»).
Унифицированные команды Excel
Многие команды в Microsoft Excel XP (настройка, параметры, масштаб, шрифт, параметры страницы и др.) унифицированы с другими приложениями Windows XP. Используйте их так же, как в текстовом редакторе Microsoft Word XP для создания удобной рабочей среды и для настройки внешнего вида электронных таблиц на экране монитора или на листе бумаги.
Рейтинг: 3/5 — 2
голосов
excel — Как превратить строковую формулу в «настоящую» формулу?
спросил
Изменено
2 года, 1 месяц назад
Просмотрено
403 тыс. раз
У меня 0,4*A1
в ячейке (в виде строки). Как можно преобразовать эту «строковую формулу» в реальную формулу и вычислить ее значение в другой ячейке?
- excel
- строка
- формула
- функция рабочего листа
- оценка
2
Evaluate
может подойти:
http://www.mrexcel.com/forum/showthread.php?t=62067
Функция Eval(Ref As String) Application.Volatile Оценка = Оценка (Ссылка) Конечная функция
3
Я объединил свою формулу как обычно, но в начале у меня было '=
вместо =
.
Затем я копирую и вставляю как текст туда, где мне это нужно. Затем я выделяю раздел, сохраненный как текст, и нажимаю ctrl + H , чтобы найти и заменить.
Я заменяю '=
на =
и все мои функции активны.
Это несколько шагов, но без VBA.
6
ОБНОВЛЕНИЕ Раньше это работало (кажется, в 2007 году), но не в Excel 2013.
Это не совсем то же самое, но если можно поместить 0,4 в одну ячейку (скажем, B1), а текстовое значение A1 в другую ячейку (скажем, C1), в ячейку D1, вы можете использовать =B1* INDIRECT(C1), что приводит к вычислению 0,4 * значения A1.
Итак, если A1 = 10, вы получите 0,4*10 = 4
в ячейке D1. Я обновлю снова, если смогу найти лучшее решение 2013 года, и извините, что Microsoft уничтожила исходную функциональность INDIRECT!
Для решения, отличного от VBA, используйте НЕПРЯМОЙ 9Формула 0012. Он принимает строку в качестве аргумента и преобразует ее в ссылку на ячейку.
Например, =0,4*ДВССЫЛ("A1")
вернет значение 0,4 * значение в ячейке A1 этого рабочего листа.
Если бы ячейка A1 была, скажем, 10, то =0,4*ДВССЫЛ("A1")
вернула бы 4.
7
Ради интереса я нашел здесь интересную статью об использовании какой-то скрытой функции оценки, которая существует в Excel. Хитрость заключается в том, чтобы присвоить его имени и использовать это имя в своих ячейках, потому что EVALUATE() выдаст вам сообщение об ошибке, если оно используется непосредственно в ячейке. Я пробовал, и это работает! Вы можете использовать его с относительным именем, если хотите копировать по строкам листа.
5
Я предпочитаю VBA-решение для профессиональных решений.
С частью процедуры замены в вопросе
поиск и замена ТОЛЬКО ПОЛНЫХ СЛОВ, я использую следующую процедуру VBA:
'' ' Оценить текст формулы в Excel ' Функция wm_Eval(myFormula As String, ParamArray variableAndValues() As Variant) As Variant Дим и пока ' ' заменить строки значениями ' Для i = LBound(variablesAndValues) To UBound(variablesAndValues) Шаг 2 мояФормула = RegExpReplaceWord(мояФормула, переменныеИЗначения(i), переменныеИЗначения(i + 1)) Следующий ' интернационализация ' myFormula = Заменить (myFormula, Application. ThousandsSeparator, "") myFormula = Заменить (myFormula, Application.DecimalSeparator, ".") myFormula = Заменить (myFormula, Application.International (xlListSeparator), ",") ' ' возвращаемое значение ' wm_Eval = Application.Evaluate(мояФормула) Конечная функция '' ' Заменить все слово ' ' Цель: заменить [strFind] на [strReplace] в [strSource] ' Комментарий: [strFind] может быть простым текстом или шаблоном регулярного выражения; ' все вхождения [strFind] заменены Публичная функция RegExpReplaceWord(ByVal strSource As String, _ ByVal strНайти как строку, _ ByVal strReplace As String) Как String ' для раннего связывания требуется ссылка на Microsoft VBScript ' Обычные выражения: ' с поздним связыванием ссылка не требуется: Dim re As Object Установите re = CreateObject("VBScript.RegExp") re.Global = Истина 're.IgnoreCase = True ' <-- без учета регистра re.Pattern = "\b" и strFind & "\b" RegExpReplaceWord = re.Replace(strSource, strReplace) Установить повторно = Ничего Конечная функция
Использование процедуры в листе Excel выглядит так:
На мой взгляд, лучшие решения находятся по этой ссылке:
http://www. myonlinetraininghub.com/excel-factor-12-secret-evaluate-function
Вот сводка:
- В ячейку A1 введите
1
, - В ячейку A2 введите
2
, - В ячейку A3 введите
+
, - Создайте именованный диапазон с
= Оценить (A1 и A3 и A2)
в поле ссылки на при создании именованного диапазона. Назовем этот именованный диапазон "testEval", - В ячейку A4 введите
=testEval
,
В ячейке A4 должно быть значение 3.
Примечания:
а) Не требует программирования/VBA.
б) Я сделал это в Excel 2013, и это работает.
2
Допустим, у нас есть столбец E
, заполненный формулами, которые возвращают строку, например:
= "=" & D7
где D7
ячейка содержит более сложную формулу, которая составляет окончательный желаемый результат, скажем:
= 3,02 * 1024 * 1024 * 1024
И так во всем огромном количестве рядов, которые есть.
Когда рядов мало - достаточно скопировать нужные ячейки как значения (по ПКМ)
в ближайший столбец, скажем G
, и нажать F2 с последующим Введите в каждую из строк.
Однако при большом количестве строк это невозможно...
Итак, Нет VBA. Никаких лишних формул. № F&R
Ошибок нет, опечаток нет, а только глупые механические действия,
Как на конвейере Форда. И всего за нескольких секунд всего :
- [Предположим, что все задействованные столбцы имеют формат «Общий».]
- Открыть Блокнот++
- Выбрать весь столбец
D
- Ctrl+C
- Ctrl+V в АЭС
- Ctrl+A в АЭС
- Выберите ячейку в первой строке нужного столбца
G1
- Ctrl+V
- Наслаждайтесь 🙂
.
1
Excel 2019 здесь. EVALUATE
недействителен.
Это сработает, если мы создадим из него именованный диапазон:
Но в этом случае мы предоставляем абсолютную ссылку, что не очень хорошо:
- Нам пришлось бы изменять формулу каждый раз, когда мы хотим повторно использовать его.
- При изменении значения в ячейке A1 оцениваемый результат не изменится.
Решение:
=ОЦЕНКА(ПОЛУЧИТЬ.ЯЧЕЙКА(5,СМЕЩЕНИЕ(КОСВЕННЫЙ("RC",ЛОЖЬ),0,-1)))
Лучший способ сделать это без VBA — использовать формулу ТЕКСТ. Он принимает строку в качестве аргумента и преобразует ее в значение.
Например, =ТЕКСТ ("0,4*A1",'##') вернет значение 0,4 * значение, содержащееся в ячейке A1 этого рабочего листа.
1
Функции даты Excel | CustomGuide
Даты и время можно использовать в формулах так же, как и любые другие значения. Например, если ячейка A1 содержит запись 01.05.19, вы можете использовать формулу =A1+100 для вычисления даты через 100 дней, то есть 09.08.19.
Одна очень важная вещь, которую нужно знать о работе с функциями даты и времени: хотя Excel может отображать дату и время практически в любом формате, он хранит даты в виде хронологических чисел, называемых порядковыми значениями. Итак, когда вы думаете о датах как о месяцах, днях и годах, например, 1 мая 2019 г., Excel воспринимает даты как порядковые номера, например 36281.
Поскольку формулы даты и времени часто возвращают значения порядкового номера, все ячейки с формулами даты или времени следует форматировать в понятных форматах даты и времени.
Общие функции даты
В этой таблице перечислены некоторые функции даты и времени, доступные в Excel.
Имя функции | Функция | Что делает функция |
---|---|---|
Дата | =ДАТА(год, месяц, день) | Вводит дату в ячейку. Пример: DATE(2019,5,1) равно 1 мая 2019 года. |
Сегодня | =СЕГОДНЯ() | Специальная версия функции DATE. Функция ДАТА возвращает значение любой даты; функция СЕГОДНЯ возвращает значение текущей даты. |
Время | =ВРЕМЯ(час,минута,секунда) | Вводит время в ячейку. Используется 24-часовая (военная) система времени. Пример: ВРЕМЯ(14,30,0) равно 14:30. |
Сейчас | = СЕЙЧАС ( ) | Специальная версия функции ВРЕМЯ. Функция ВРЕМЯ возвращает значение любого времени; функция СЕЙЧАС возвращает значение текущего времени. |
год | =ГОД(серийный_номер, возвращаемый_тип) | Возвращает значение года для определенной даты. Аргумент серийный_номер представляет собой значение даты (или ссылку на нее). Пример: YEAR("15.03.2019") равно 2019. |
Месяц | =МЕСЯЦ(серийный_номер, возвращаемый_тип) | Возвращает значение месяца для определенной даты. Аргумент серийный_номер представляет собой значение даты (или ссылку на нее). Пример: МЕСЯЦ ("15.03.2019") равен 3. |
День | =ДЕНЬ(серийный_номер, возвращаемый_тип) | Возвращает значение дня для определенной даты. Аргумент серийный_номер представляет собой значение даты (или ссылку на нее). Пример: ДЕНЬ("15.03.2019") равно 15. |
Функция СЕГОДНЯ()
Если вам нужно вычислить значения на основе дат, очень полезной функцией является СЕГОДНЯ, которая возвращает сегодняшнюю дату.