Содержание
- Процедура создания калькулятора
- Способ 1: использование макросов
- Способ 2: применение функций
- Способ 3: включение встроенного калькулятора Excel
- Вопросы и ответы
Для постоянных пользователей Excel не секрет, что в этой программе можно производить различные математические, инженерные и финансовые расчеты. Данная возможность реализуется путем применения различных формул и функций. Но, если Эксель постоянно использовать для проведения подобных расчетов, то актуальным становится вопрос организации необходимых для этого инструментов прямо на листе, что значительно повысит скорость вычислений и уровень удобства для пользователя. Давайте выясним, как сделать подобный калькулятор в Экселе.
Процедура создания калькулятора
Особенно насущной данная задача становится в случае необходимости постоянно проводить однотипные вычисления и расчеты, связанные с определенным видом деятельности. В целом все калькуляторы в Excel можно разделить на две группы: универсальные (используются для общих математических вычислений) и узкопрофильные. Последняя группа делится на множество видов: инженерные, финансовые, кредитные инвестиционные и т.д. Именно от функциональных возможностей калькулятора, в первую очередь, зависит выбор алгоритма его создания.
Способ 1: использование макросов
Прежде всего, рассмотрим алгоритмы создания пользовательских калькуляторов. Начнем с создания простейшего универсального калькулятора. Данный инструмент будет выполнять элементарные арифметические действия: сложение, умножение вычитание, деление и т. д. Он реализован с помощью макроса. Поэтому прежде, чем приступить к процедуре создания, нужно удостовериться, что у вас включены макросы и панель разработчика. Если это не так, то обязательно следует активировать работу макросов.
- После того, как указанные выше предварительные настройки выполнены, перемещаемся во вкладку «Разработчик». Жмем на иконку «Visual Basic», которая размещена на ленте в блоке инструментов «Код».
- Запускается окно редактора VBA. Если центральная область у вас отобразилась серым цветом, а не белым, то это означает, что поле введения кода отсутствует. Для включения его отображения переходим в пункт меню «View» и жмем по надписи «Code» в появившемся списке. Можно вместо этих манипуляций нажать функциональную клавишу F7. В любом случае поле для ввода кода появится.
- Тут в центральной области нам нужно записать сам код макроса. Он имеет следующий вид:
Sub Calculator()
Dim strExpr As String
' Введение данных для расчета
strExpr = InputBox("Введите данные")
' Вычисление результата
MsgBox strExpr & " = " & Application.Evaluate(strExpr)
End Sub
Вместо словосочетания «Введите данные» вы можете записать любое другое более приемлемое для вас. Именно оно будет располагаться над полем введения выражения.
После того, как код введен, файл нужно перезаписать. При этом его следует сохранить в формате с поддержкой макросов. Жмем на иконку в виде дискеты на панели инструментов редактора VBA.
- Запускается окно сохранения документа. Переходим в ту директорию на жестком диске или съемном носителе, где хотим его сохранить. В поле «Имя файла» присваиваем документу любое желаемое наименование или оставляем то, которое присвоено ему по умолчанию. В обязательном порядке в поле «Тип файла» из всех доступных форматов выбираем наименование «Книга Excel с поддержкой макросов (*.xlsm)». После данного шага клацаем по кнопке «Сохранить» в нижней части окна.
- После этого можно закрывать окно редактора макросов, просто нажав на стандартный значок закрытия в виде красного квадрата с белым крестиком в его правом верхнем углу.
- Чтобы запустить вычислительный инструмент при помощи макроса, находясь во вкладке «Разработчик», клацаем по значку «Макросы» на ленте в блоке инструментов «Код».
- После этого запускается окно макросов. Выбираем наименование того макроса, который мы только что создавали, выделяем его и жмем на кнопку «Выполнить».
- После выполнения данного действия запускается калькулятор, созданный на основе макроса.
- Для того, чтобы произвести в нем вычисление, записываем в поле необходимое действие. Удобнее всего использовать для этих целей числовой блок клавиатуры, который расположен справа. После того, как выражение введено, жмем на кнопку «OK».
- Затем на экране появляется небольшое окошко, которое содержит в себе ответ решения заданного выражения. Для его закрытия жмем на кнопку «OK».
- Но согласитесь, что довольно неудобно каждый раз, когда потребуется произвести вычислительные действия, переходить в окно макросов. Давайте упростим реализацию запуска окна вычислений. Для этого, находясь во вкладке «Разработчик», щелкаем по уже знакомой нам иконке «Макросы».
- Затем в окне макросов выбираем наименование нужного объекта. Щелкаем по кнопке «Параметры…».
- После этого запускается окошко ещё меньше предыдущего. В нем мы можем задать сочетание горячих клавиш, при нажатии на которые будет запускаться калькулятор. Важно, чтобы данное сочетание не использовалось для вызова других процессов. Поэтому первые символы алфавита использовать не рекомендуется. Первую клавишу сочетания задает сама программа Эксель. Это клавиша Ctrl. Следующую клавишу задает пользователь. Пусть это будет клавиша V (хотя вы можете выбрать и другую). Если данная клавиша уже используется программой, то будет автоматически добавлена ещё одна клавиша в комбинацию – Shift. Вписываем выбранный символ в поле «Сочетание клавиш» и жмем на кнопку «OK».
- Затем закрываем окно макросов, нажав на стандартный значок его закрытия в верхнем правом углу.
Теперь при наборе выбранной комбинации горячих клавиш (в нашем случае Ctrl+Shift+V) будет запускаться окно калькулятора. Согласитесь, это намного быстрее и проще, чем каждый раз вызывать его через окно макросов.
Урок: Как создать макрос в Экселе
Способ 2: применение функций
Теперь давайте рассмотрим вариант создания узкопрофильного калькулятора. Он будет предназначен для выполнения конкретных, специфических задач и размещен непосредственно на листе Excel. Для создания этого инструмента будут применяться встроенные функции Эксель.
Для примера создадим инструмент конвертации величин массы. В процессе его создания нами будет использована функция ПРЕОБР. Данный оператор относится к инженерному блоку встроенных функций Эксель. Его задачей является преобразование величин одной меры измерения в другую. Синтаксис данной функции следующий:
=ПРЕОБР(число;исх_ед_изм;кон_ед_изм)
«Число» — это аргумент, имеющий вид числового значения той величины, которую надо конвертировать в другую меру измерения.
«Исходная единица измерения» — аргумент, который определяет единицу измерения величины, подлежащую конвертации. Он задается специальным кодом, который соответствует определенной единице измерения.
«Конечная единица измерения» — аргумент, определяющий единицу измерения той величины, в которую преобразуется исходное число. Он также задается с помощью специальных кодов.
Нам следует подробнее остановиться на этих кодах, так как они нам понадобятся в дальнейшем при создании калькулятора. Конкретно нам понадобятся коды единиц измерения массы. Вот их перечень:
- g – грамм;
- kg – килограмм;
- mg – миллиграмм;
- lbm – английский фунт;
- ozm – унция;
- sg – слэг;
- u – атомная единица.
Нужно также сказать, что все аргументы данной функции можно задавать, как значениями, так и ссылками на ячейки, где они размещены.
- Прежде всего, делаем заготовку. У нашего вычислительного инструмента будет четыре поля:
- Конвертируемая величина;
- Исходная единица измерения;
- Результат конвертации;
- Конечная единица измерения.
Устанавливаем заголовки, под которыми будут размещаться данные поля, и выделяем их форматированием (заливкой и границами) для более наглядной визуализации.
В поля «Конвертируемая величина», «Исходная граница измерения» и «Конечная граница измерения» нами будут вводиться данные, а в поле «Результат конвертации» — выводиться конечный результат.
- Сделаем так, чтобы в поле «Конвертируемая величина» пользователь мог вводить только допустимые значения, а именно числа больше нуля. Выделяем ячейку, в которую будет вноситься преобразуемая величина. Переходим во вкладку «Данные» и в блоке инструментов «Работа с данными» кликаем по значку «Проверка данных».
- Запускается окошко инструмента «Проверка данных». Прежде всего, выполним настройки во вкладке «Параметры». В поле «Тип данных» из списка выбираем параметр «Действительное». В поле «Значение» также из списка останавливаем выбор на параметре «Больше». В поле «Минимум» устанавливаем значение «0». Таким образом, в данную ячейку можно будет вводить только действительные числа (включая дробные), которые больше нуля.
- После этого перемещаемся во вкладку того же окна «Сообщение для ввода». Тут можно дать пояснение, что именно нужно вводить пользователю. Он его увидит при выделении ячейки ввода величины. В поле «Сообщение» напишем следующее: «Введите величину массы, которую следует преобразовать».
- Затем перемещаемся во вкладку «Сообщение об ошибке». В поле «Сообщение» нам следует написать ту рекомендацию, которую увидит пользователь, если введет некорректные данные. Напишем следующее: «Вводимое значение должно быть положительным числом». После этого, чтобы завершить работу в окне проверки вводимых значений и сохранить введенные нами настройки, жмем на кнопку «OK».
- Как видим, при выделении ячейки появляется подсказка для ввода.
- Попробуем ввести туда некорректное значение, например, текст или отрицательное число. Как видим, появляется сообщение об ошибке и ввод блокируется. Жмем на кнопку «Отмена».
- А вот корректная величина вводится без проблем.
- Теперь переходим к полю «Исходная единица измерения». Тут мы сделаем так, что пользователь будет выбирать значение из списка, состоящего из тех семи величин массы, перечень которых был приведен выше при описании аргументов функции ПРЕОБР. Ввести другие значения не получится.
Выделяем ячейку, которая находится под наименованием «Исходная единица измерения». Снова клацаем по иконке «Проверка данных».
- В открывшемся окне проверки данных переходим во вкладку «Параметры». В поле «Тип данных» устанавливаем параметр «Список». В поле «Источник» через точку с запятой (;) перечисляем коды наименований величин массы для функции ПРЕОБР, о которых шел разговор выше. Далее жмем на кнопку «OK».
- Как видим, теперь, если выделить поле «Исходная единица измерения», то справа от него возникает пиктограмма в виде треугольника. При клике по ней открывается список с наименованиями единиц измерения массы.
- Абсолютно аналогичную процедуру в окне «Проверка данных» проводим и с ячейкой с наименованием «Конечная единица измерения». В ней тоже получается точно такой же список единиц измерения.
- После этого переходим к ячейке «Результат конвертации». Именно в ней будет содержаться функция ПРЕОБР и выводить результат вычисления. Выделяем данный элемент листа и жмем на пиктограмму «Вставить функцию».
- Запускается Мастер функций. Переходим в нем в категорию «Инженерные» и выделяем там наименование «ПРЕОБР». Затем клацаем по кнопке «OK».
- Происходит открытие окна аргументов оператора ПРЕОБР. В поле «Число» следует ввести координаты ячейки под наименованием «Конвертируемая величина». Для этого ставим в курсор в поле и кликаем левой кнопкой мыши по этой ячейке. Её адрес тут же отображается в поле. Таким же образом вводим координаты в поля «Исходная единица измерения» и «Конечная единица измерения». Только на этот раз кликаем по ячейкам с такими же названиями, как у этих полей.
После того, как все данные введены, жмем на кнопку «OK».
- Как только мы выполнили последнее действие, в окошке ячейки «Результат конвертации» тут же отобразился результат преобразования величины, согласно ранее введенным данным.
- Давайте изменим данные в ячейках «Конвертируемая величина», «Исходная единица измерения» и «Конечная единица измерения». Как видим, функция при изменении параметров автоматически пересчитывает результат. Это говорит о том, что наш калькулятор полностью функционирует.
- Но мы не сделали одну важную вещь. Ячейки для ввода данных у нас защищены от введения некорректных значений, а вот элемент для вывода данных никак не защищен. А ведь в него вообще нельзя ничего вводить, иначе формула вычисления будет просто удалена и калькулятор придет в нерабочее состояние. По ошибке в эту ячейку можете ввести данные и вы сами, не говоря уже о сторонних пользователях. В этом случае придется заново записывать всю формулу. Нужно заблокировать любой ввод данных сюда.
Проблема состоит в том, что блокировка устанавливается на лист в целом. Но если мы заблокируем лист, то не сможем вводить данные в поля ввода. Поэтому нам нужно будет в свойствах формата ячеек снять возможность блокировки со всех элементов листа, потом вернуть эту возможность только ячейке для вывода результата и уже после этого заблокировать лист.
Кликаем левой кнопкой мыши по элементу на пересечении горизонтальной и вертикальной панели координат. При этом выделяется весь лист. Затем кликаем правой кнопкой мыши по выделению. Открывается контекстное меню, в котором выбираем позицию «Формат ячеек…».
- Запускается окно форматирования. Переходим в нем во вкладку «Защита» и снимаем галочку с параметра «Защищаемая ячейка». Затем клацаем по кнопке «OK».
- После этого выделяем только ячейку для вывода результата и кликаем по ней правой кнопкой мыши. В контекстном меню клацаем по пункту «Формат ячеек».
- Снова в окне форматирования переходим во вкладку «Защита», но на этот раз, наоборот, устанавливаем галочку около параметра «Защищаемая ячейка». Затем щелкаем по кнопке «OK».
- После этого перемещаемся во вкладку «Рецензирование» и жмем на иконку «Защитить лист», которая расположена в блоке инструментов «Изменения».
- Открывается окно установки защиты листа. В поле «Пароль для отключения защиты листа» вводим пароль, с помощью которого при необходимости в будущем можно будет снять защиту. Остальные настройки можно оставить без изменений. Жмем на кнопку «OK».
- Затем открывается ещё одно небольшое окошко, в котором следует повторить ввод пароля. Делаем это и жмем на кнопку «OK».
- После этого при попытке внесения любых изменений в ячейку вывода результата действия будут блокироваться, о чем сообщается в появляющемся диалоговом окне.
Таким образом, мы создали полноценный калькулятор для конвертации величины массы в различные единицы измерения.
Кроме того, в отдельной статье рассказывается о создании ещё одного вида узкопрофильного калькулятора в Экселе для расчета платежей по кредитам.
Урок: Расчет аннуитетного платежа в Экселе
Способ 3: включение встроенного калькулятора Excel
Кроме того, в Экселе имеется собственный встроенный универсальный калькулятор. Правда, по умолчанию кнопка его запуска отсутствует на ленте или на панели быстрого доступа. Рассмотрим, как активировать её.
- После запуска программы Excel перемещаемся во вкладку «Файл».
- Далее в открывшемся окне переходим в раздел «Параметры».
- После запуска окошка параметров Excel перемещаемся в подраздел «Панель быстрого доступа».
- Перед нами открывается окно, правая часть которого разделена на две области. В правой ее части расположены инструменты, которые уже добавлены на панель быстрого доступа. В левой представлен весь набор инструментов, который доступен в Excel, включая отсутствующие на ленте.
Над левой областью в поле «Выбрать команды» из перечня выбираем пункт «Команды не на ленте». После этого в списке инструментов левой области ищем наименование «Калькулятор». Найти будет просто, так как все названия расположены в алфавитном порядке. Затем производим выделения данного наименования.
Над правой областью находится поле «Настройка панели быстрого доступа». Оно имеет два параметра:
- Для всех документов;
- Для данной книги.
По умолчанию происходит настройка для всех документов. Этот параметр рекомендуется оставить без изменений, если нет предпосылок для обратного.
После того, как все настройки совершены и наименование «Калькулятор» выделено, жмем на кнопку «Добавить», которая расположена между правой и левой областью.
- После того, как наименование «Калькулятор» отобразилось в правой области окна, жмем на кнопку «OK» внизу.
- После этого окно параметров Excel будет закрыто. Чтобы запустить калькулятор, нужно кликнуть на одноименный значок, который теперь располагается на панели быстрого доступа.
- После этого инструмент «Калькулятор» будет запущен. Функционирует он, как обычный физический аналог, только на кнопки нужно нажимать курсором мышки, её левой кнопкой.
Как видим, в Экселе существует очень много вариантов создания калькуляторов для различных нужд. Особенно эта возможность полезна при проведении узкопрофильных вычислений. Ну, а для обычных потребностей можно воспользоваться и встроенным инструментом программы.
Стоит иметь в виду, что Excel сам по себе сложный калькулятор, который в состоянии рассчитывать таблицы, создавать сводную таблицу, строить графики и умножать матрицы, находить их определитель. И также сортировать данные.
Часто при работе в Excel для быстрой проверки и простых вычислений рука так и тянется к обычному калькулятору. Его приходится искать в меню или на панели задач с сопутствующими комментариями. Оказывается, разработчики программы учли и это. Для расчетов в режиме калькулятора предусмотрены две основных возможности.
Встроенный калькулятор
Значок калькулятора можно вывести на панель быстрого доступа Excel. Для этого используем Файл, далее Параметры → Панель быстрого доступа. В поле Выбрать команды из Все команды находим Калькулятор (команды расположены по алфавиту), затем жмем Добавить и ОК.
Если в вашей версии нет списка Файл, нажимаем на элемент выпадающего списка справа на панели быстрого доступа (Рис. 1) и выполняем последовательность: Выбрать команды из Все команды → Калькулятор → Добавить → ОК. Нужный символ появится на панели (Рис. 3).
Рис. 1. Выпадающий список настройки панели быстрого доступа.
Рис. 2. Добавление команды калькулятор на панель быстрого доступа.
Клавиша Калькулятор добавлена на панель быстрого доступа. Стандартный калькулятор открывается одним нажатием без дополнительных усилий.
Рис. 3. Значок калькулятора на панели быстрого доступа.
Собственный калькулятор
Если один и тот же расчет выполняется часто, например, определение напряжения в сечении балки или дисконтированного денежного потока, – собственный, то есть созданный самостоятельно калькулятор очень их упростит.
Рассмотрим калькулятор для расчета напряжения при растяжении.
Предположим, усилие в точке расчета, материал и его напряжение известны. Нужно найти площадь сечения. Она определяется как
F=P [σ]F= P [σ],
где PP – усилие,
σσ – напряжение.
Составляем в Excel таблицу исходных данных. Вносим значения усилия и напряжения, единицы измерения и в ячейке GH2 вводим формулу. Множитель 10,1971 связан с необходимостью конвертации кгс в МПа.
МПа = 10,197116 кгс/см2
Рис. 4. Калькулятор для определения площади поперечного сечения при растяжении-сжатии.
В дальнейшем этот калькулятор можно усложнить, добавив материалы, формы поперечных сечений и случай изгиба.
Калькулятор для расчета дисконтированного денежного потока основан на том же принципе: в ячейку вносится формула, которая распространяется на соседние, и результаты суммируются в ячейке I4 и I6 с помощью Автосуммы.
Рис. 5. Калькулятор для расчета дисконтированного денежного потока.
И в 1-м, и во 2-м случае результат изменится сразу после ввода нового значения.
Из предыдущего случая очевидно, что калькуляторы на рис. 3 и 4 представляют собой таблицы с упрощенным вводом данных. К их плюсам относится быстрота расчетов и простота изменения калькулятора.
Макросы
После запуска стандартного макроса
Sub Calculator()
Dim strExpr As String
’ Введение данных для расчета
strExpr = InputBox(“Введите данные”)
’ Вычисление результата
MsgBox strExpr & » = » & Application.Evaluate(strExpr)
End Sub
получаем почти тот же результат, что при использовании встроенного калькулятора. Преимуществом является то, что в окне ввода можно указать всю последовательность вычислений (Рис. 6).
Рис. 6. Калькулятор, созданный в редакторе VBA.
Макрос вводится через окно редактора VBA – вкладка файл → разработчик → кнопка Visual Basic. Для его отладки требуется как минимум 5 операций, тем не менее результат стоит затраченных усилий.
Остается удивляться, почему вариант на рис. 6 не включен в стандартные опции программы Excel.
Excel позволяет создать калькулятор практически для любой задачи и его вид может полностью определяться и изменяться пользователем под потребности.
В программе Excel есть множество других интересных и полезных функций, например, формула времени — читайте и изучайте на Справочнике!
Использование Microsoft Excel в качестве калькулятора
Вместо калькулятора используйте для математических расчетов Microsoft Excel!
Вы можете ввести простые формулы для с суммы, деления, умножения и вычитания двух или более числных значений. Кроме того, с помощью функции «Автоумма» можно быстро свести ряд значений, не вводя их в формулу вручную. Создав формулу, вы можете скопировать ее в смежные ячейки, не создав одну и ту же формулу раз за разом.
Вычитание в Excel
Умножение в Excel
Деление в Excel
Простые формулы
Все записи формул начинаются со знака равенства (=). Чтобы создать простую формулу, просто введите знак равенства, а следом вычисляемые числовые значения и соответствующие математические операторы: знак плюс (+) для сложения, знак минус (—) для вычитания, звездочку (*) для умножения и наклонную черту (/) для деления. Затем нажмите клавишу ВВОД, и Excel тут же вычислит и отобразит результат формулы.
Например, если в ячейке C5 ввести формулу =12,99+16,99 и нажать клавишу ВВОД, Excel вычислит результат и отобразит 29,98 в этой ячейке.
Формула, введенная в ячейке, будет отображаться в строке формул всякий раз, как вы выберете ячейку.
Важно: Хотя существует функция СУММ, функция ВЫЧЕСТЬ не существует. Вместо этого используйте в формуле оператор минус (-). Например, =8-3+2-4+12. Вы также можете использовать знак «минус» для преобразования числа в его отрицательное значение в функции СУММ. Например, в формуле =СУММ(12;5;-3;8;-4) функция СУММ используется для сложить 12, 5, вычесть 3, сложить 8 и вычесть 4 в этом порядке.
Использование автосуммирования
Формулу СУММ проще всего добавить на лист с помощью функции автосуммирования. Выберите пустую ячейку непосредственно над или под диапазоном, который нужно суммировать, а затем откройте на ленте вкладку Главная или Формула и выберите Автосумма > Сумма. Функция автосуммирования автоматически определяет диапазон для суммирования и создает формулу. Она также работает и по горизонтали, если вы выберете ячейку справа или слева от суммируемого диапазона.
Примечание: Функция автосуммирования не работает с несмежными диапазонами.
Автосуммирование по вертикали
На рисунке выше показано, что функция автосуммирования автоматически определила ячейки B2: B5 в качестве диапазона для суммирования. Вам нужно только нажать клавишу ВВОД для подтверждения. Если вам нужно добавить или исключить несколько ячеек, удерживая нажатой клавишу SHIFT, нажимайте соответствующую клавишу со стрелкой, пока не выделите нужный диапазон. Затем нажмите клавишу ВВОД для завершения задачи.
Руководство по функции Intellisense: СУММ(число1;[число2];…) Плавающий тег под функцией — это руководство Intellisense. Если щелкнуть имя функции или СУММ, изменится синяя гиперссылка на раздел справки для этой функции. Если щелкнуть отдельные элементы функции, их представительные части в формуле будут выделены. В этом случае будет выделен только B2:B5, поскольку в этой формуле есть только одна ссылка на число. Тег Intellisense будет отображаться для любой функции.
Автосуммирование по горизонтали
Дополнительные сведения см. в статье о функции СУММ.
Избегание переписывания одной формулы
После создания формулы ее можно просто копировать в другие ячейки, а не создавать ту же формулу. Вы можете скопировать формулу или использовать маркер заполнения для копирования формулы в смежные ячейки.
Например, когда вы копируете формулу из ячейки B6 в ячейку C6, в ней автоматически изменяются ссылки на ячейки в столбце C.
При копировании формулы проверьте правильность ссылок на ячейки. Ссылки на ячейки могут меняться, если они являются относительными. Дополнительные сведения см. в статье Копирование и вставка формулы в другую ячейку или на другой лист.
Что использовать в формуле для имитации клавиш калькулятора?
Клавиша калькулятора |
Метод Excel |
Описание, пример |
Результат |
+ (клавиша плюс) |
+ (плюс) |
Используйте в формуле для сложения чисел. Пример: =4+6+2 |
12 |
— (клавиша минус) |
— (минус) |
Используйте в формуле для вычитания чисел или обозначения отрицательного числа. Пример: =18-12 Пример: =24*-5 (24 умножить на отрицательное число 5) |
-120 |
x (клавиша умножения) |
* (звездочка) |
Используйте в формуле для умножения чисел. Пример: =8*3 |
24 |
÷ (клавиша деления) |
/ (косая черта) |
Используйте в формуле для деления одного числа на другое. Пример: =45/5 |
9 |
% (клавиша процента) |
% (процент) |
Используйте в формуле со знаком * для умножения на процент. Пример: =15%*20 |
3 |
√ (квадратный корень) |
SQRT (функция) |
Используйте функцию SQRT в формуле, чтобы найти квадратный корень числа. Пример: =SQRT(64) |
8 |
1/x (обратная величина) |
=1/n |
Используйте в формуле выражение =1/n, где n — число, на которое нужно разделить 1. Пример: =1/8 |
0,125 |
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Нужна дополнительная помощь?
excel — калькулятор для расчета цен
Расчет цены на свой товар иногда становится проблемой для начинающих предпринимателей. Особенно, когда приходится принимать решения с учетом желаемой рентабельности или возможных скидках. Это может быть расчет цен при продаже в интернет-магазине, или расчет скидки при продаже клиенту. Вопросы у предпринимателей могут быть разные, но как правило, они связаны с расчетом цены для получения заданной рентабельности. В помощь начинающим бизнесменам сделал калькулятор для ценообразования — его можно скачать по ссылке в конце статьи.
Исходные данные для ценообразования и основные формулы
В самом простом случае вам необходимо знать цену закупки и желаемую валовую рентабельность продаж.
В этом случае:
Валовая прибыль = Цена продажи — Цена закупки,
Валовая рентабельность = Валовая прибыль / Цена продажи.
Расчет цены проводится по формуле:
Цена = Цена закупки х (1 + Наценка)
Зная цену закупки и желаемую валовую прибыль, рассчитываем цену:
Цена = Цена закупки / (1 — Рентабельность)
А после этого необходимую наценку:
Наценка = Цена продажи / Цена закупки — 1
В этом случае вы можете рассчитать какую наценку при заданной цене закупки и рентабельности необходимо использовать и какую валовую прибыль вы в этом случае получите.
Как рассчитать, на сколько нужно увеличить продажи, если продавать со скидкой
Один из вопросов, на которые приходится отвечать предпринимателю, на сколько необходимо увеличить продажи, если продажи ведутся со скидкой, чтобы валовая прибыль осталась на том же уровне.
Это тоже не сложно. Если мы предоставляем скидку, то уменьшается цена продажи, следовательно, валовая прибыль и рентабельность. Продажи необходимо увеличить пропорционально изменению валовой прибыли.
Необходимое увеличение продаж (%) = Валовая прибыль за единицу без скидки / Валовая прибыль за единицу со скидкой — 1
Соответственно, в количестве единиц
Необходимое увеличение продаж (шт.) = Продажи без скидки (шт.) * Необходимое увеличение продаж (%).
Как видите, достаточно просто.
Рассчитываем цену, исходя из максимальной скидки.
Часто нужно рассчитать цены, исходя из максимально возможной скидки и минимально приемлемой рентабельности продаж. В этом случае алгоритм расчета немного усложнится.
Сначала, с учетом желаемой рентабельности рассчитываете цену продажи со скидкой:
Цена продажи с максимальной скидкой = Цена закупки / (1 — желаемая рентабельность)
Затем, с учетом максимальной скидки, рассчитываем цену прайса:
Цена прайса = Цена продажи с максимальной скидкой / (1 — Максимальная скидка)
Расчет необходимой наценки, после этого не представляет сложности.
Калькулятор для расчета цен можно скачать по ссылке без регистрации — Калькулятор для ценообразования.
Надеюсь, он будет вам полезен.
Формально калькулятор распространяется по лицензии Стандартная общественная лицензия GNU (GPL).
Приглашаю в группу на FB — Маркетинг для практиков, где можно оставить отзыв и задать интересующие вас вопросы.
Примечание. Если вместо цены закупки вы используйте значение переменных затрат (или полной себестоимости), то вместо Валовой прибыли получаете маржинальную прибыль, а вместо Рентабельности по валовой прибыли — Рентабельность по маржинальной прибыли. Ничего принципиально в расчетах не меняется.
Обратите внимание на Финансовый калькулятор. Тоже может пригодится начинающим предпринимателям. Он позволяет провести простые финансовые расчеты и посмотреть экономические результаты предприятия в случае изменения показателей продаж или коммерческих расходов.
Расчет стоимости заказа онлайн сильно увеличивает конверсию. Еще сильнее она улучшается при онлайн оформлении счета. Почему же так часто приходится ждать расчета стоимости и оформления заказа? Что мешает использовать на сайте тот самый файл Excel, в котором рассчитывает заказ продавец?
Давайте разберемся концептуально →
Если расчет стоимости всегда делается в Excel и этот Excel живет в облаке, то почему бы не позволить любимым клиентам самостоятельно делать расчет в заботливо подготовленном шаблоне? У клиентов разный уровень подготовки, но галочки поставить и ввести свое имя с адресом могут все. А больше от них ничего и не требуется ¯_(ツ)_/¯
Посмотрим на конкретном примере → как повесить на сайте свой Excel с расчетом заказа и автоматическим оформлением счета. Не будем пока выяснять что лучше использовать: Google Sheets или MS Office, сегодня разговор не об этом. Плюсы и минусы технической реализации в разных сервисах в этой заметке не рассматриваем.
Excel online это собирательное название табличных редакторов в облаке. Примерная подборка сервисов
Excel online это универсальная платформа, позволяющая получить один и тот же результат множеством способов. Поэтому конкретный код в привязке к конкретному сервису сегодня не обсуждается. Смотрим чисто внешне как это может быть на примере одной из возможных реализаций.
1. Калькулятор заказов
В Excel можно автоматизировать многое: от получения актуального курса валюты с сайта ЦБ и вызова курьера на сайте транспортной компании до генерации чертежей и составления списка необходимых материалов. Задача калькулятора заказов ограничивается только расчетом цены договора.
Калькулятор заказов позволяет сделать расчет стоимости заказа исходя из разных факторов: необходимых материалов, вариантов отделки, количества операций, упаковки, сроков и т.д. Как правило, калькулятор заказов делается в Excel, поскольку пользоваться формулами умеют практически все.
Как правило, калькулятор заказов претерпевает несколько периодов эволюции и после хождения по рукам с разным уровнем квалификации может приобретать непонятный и запутанный интерфейс, пользоваться которым могут только избранные сотрудники. Выкладывать такое на сайте конечно нельзя, все придется переделать. Интерфейс калькулятора должен стать максимально прост и предельно понятен для любого человека с улицы.
В идеале калькулятор должен превратиться в чек-лист, в котором нужно отметить галочками необходимое. В более сложных случаях можно использовать выпадающие списки и выбор даты. Ввод руками букв и цифр лучше исключить совсем.
Посмотрим, как это может выглядеть на сайте.
Для примера возьмем услуги парсинга недвижимости. Для подсчета стоимости нужно сложить стоимость различных опций: сохранять фото, открывать номер телефона, копию страницы в pdf или в png и т.д. Затем нужно пересчитать стоимость выбранных опций на срок использования услуги.
Пример начинается с предварительного экрана. На предварительном экране приходится использовать Google Web App embedded. С одной стороны, это технический костыль. С другой стороны, такой пункт с пояснениями полезен пользователям.
Костыль в том смысле, что мы не можем просто взять и отдать юзеру калькулятор заказа. Проблема в том, что калькулятор один, а юзеров много. В многопользовательском режиме юзеры будут своими правками мешать друг другу. Поэтому каждому юзеру нужно сделать персональную копию калькулятора. На лету гугол это сделать не позволяет из-за ограничения перенаправления на другую страницу без участия юзера.
Поэтому используется Web App, которое делает копию калькулятора и подсовывает его адрес в ссылку кнопки для перехода в сам калькулятор. Благодаря ему у каждого юзера будет свой уникальный адрес перехода при нажатии на кнопку, который ведет на персональную копию файла с калькулятором заказа.
Другой задачей этого Web App является привязка кода к файлу калькулятора. Дело в том, что гугло-код не embedded в книгу калькулятора, а bounded. Разница в том, что привязка кода не копируется автоматически вместе с файлом калькулятора и его нужно привязывать явно.
Третья задача обусловлена тем, что нет события закрытия книги. В том смысле, что гугол его не реализовал и невозможно как в Excel по событию закрытия книги выполнить назначенный макрос. Поэтому приходится делать записи для последующего удаления копий.
Пока происходит все перечисленное, вместо кнопки отображается анимация загрузки
В это время юзер видит пояснения, которые снимают ожидаемые вопросы. Пытаться втиснуть пояснения в сам калькулятор кажется плохой идеей. Если же их вообще не будет, то это встревожит и отвлечет многих потенциальных пользователей. Поэтому костыльный предварительный экран по факту все равно пришлось бы делать для здорового UX.
Через несколько секунд подготовка калькулятора завершается, и пользователь получает кнопку для перехода в сам калькулятор.
С предварительной страницей всё, жмем на кнопку и переходим на основной экран.
Тут тоже костыль. Но этот костыль вписать в UX уже не получается: мобильные браузеры показывают гугло-таблицу в сильно упрощенном виде и он вам не понравится. Поэтому мобильным пользователям приходится показывать инструкцию по переходу в полноценный режим. Инструкция на два клика.
И, наконец, видим сам калькулятор:
С левой стороны иконки группировки опций. Если бы не группировка, калькулятор растянулся бы на несколько экранов.
Не все знают, как пользоваться группировкой, поэтому всеми силами стараемся обратить на нее внимание и объяснить как она работает.
Также стараемся максимально доходчиво объяснить, что для использования калькулятора нужно ставить галки.
Сроки рассчитываются также галкой. В данном случае не предполагается брать авансы, поэтому такой реализации галками достаточно. Если без ввода даты не обойтись, то есть готовый Date Picker.
Сразу можно заметить, что данные на листе не защищены от изменений. Пользователь может менять названия опций и цены.
Поначалу это может смутить. Но, если разобраться, то ничего плохого в этом нет.
Дело в том, что защита ячеек включает запрет на редактирование и на изменение, а возможность группировки относится к изменению листа. То есть если ячейки с ценами защитить, то группировка работать не будет.
С другой стороны, защита ячеек в данном случае – это не более чем условность. На любой странице в браузере любой пользователь может изменить буквально все. Ведь браузер отображает документ с разметкой html, который можно свободно редактировать здесь же в браузере встроенным средством Dev Tools. То есть защита в данном случае невозможна технически.
Все расчеты в данном примере сделаны только с помощью формул, макросы не используются. Галочка считается в формуле за 1, а ее отсутствие – это 0. Т.е. сумма = цена х ☑
.
Самые продвинутые могут заметить, что файл с калькулятором можно утащить с сайта и открыть в полном интерфейсе гугл-таблиц, в том числе получить полный доступ и снять защиту с защищенных ячеек. Однако, никакого фрода в этом нет. Кому-то это поможет увидеть как устроены формулы, но материального ущерба или выгоды из этого не получится.
Преимущества Excel-онлайн калькулятора на сайте
Как и в обычном Excel, в облаке также можно быстро и бесплатно изменить файл калькулятора заказов. Сайт при этом переделывать не придется. На сайте используется ссылка на папку с файлом калькулятора заказов. Изменение этого файла приведет к тому, что он будет показан на сайте в измененном виде. Изменения делаются как обычно: нужно зайти в свой гуглоаккаунт, открыть и изменить нужную гуглотаблицу. Также можно заменять файл калькулятора его новой версией без необходимости замены ссылки в коде сайта.
Точно также без изменений в коде можно вносить изменения в оформление счета и содержание договора. Надо просто заменить (или отредактировать) в папке в облаке гугла файл счета или договора.
Специальных требований к сайту также нет. Гугло-калькулятор вставляется на любую страницу сайта с помощью элемента iframe. Это простая операция, особых знаний для этого не нужно.
Несколько сложнее написать скрипт для копирования файла с калькулятором и передачи его на сайт. Но, если вам удалось освоить VBA Excel, то освоить Google Script будет несложно.
Обзор калькулятора заказов на этом закончен, перейдем к генератору счетов (и договоров).
2. Генератор счетов
Точно так же, как калькулятор заказов, генератор счетов имеет предварительный экран. Здесь объясняется куда попадет пользователь, что там надо делать и что получится в результате:
Генератор счетов устроен точно так же, как калькулятор заказов с одним дополнением: формы для ввода реквизитов, необходимых для оформления счета (и договора).
Фактически калькулятор заказов и генератор счетов являются одним и тем же файлом. Но для использования этого файла в качестве калькулятора заказов из файла удаляется форма для ввода реквизитов.
С точки зрения оформления форма для ввода реквизитов может быть расположена на отдельной вкладке. В этом случае под формой калькулятора заказов потребуется кнопка «Перейти к оформлению», которая будет открывать (делать активной) вкладку с формой для ввода реквизитов. В нашем примере форма для ввода реквизитов расположена непосредственно под формой калькулятора заказов.
Полный доступ пользователя к копии файла генератора предполагает возможность вписать в счет любые суммы. Однако, этого не происходит, так как при заполнении счета из копии файла генератора берутся только установленные галочки, а соответствующие им суммы и названия берутся из оригинала файла генератора.
Начинается генератор счетов с галочки оформления договора. Счет оформляется в любом случае и его галочка не снимается. Договор нужен не всем, поэтому вводить лишние реквизиты нет смысла.
В гуглотаблицах есть готовая проверка ввода (aka валидация формы), поэтому, например, в ИНН не получится ввести букву или количество цифр больше или меньше 10.
Условное форматирование также есть, заполненные реквизиты меняют цвет фона.
Изображения можно вставлять в ячейку или поверх ячеек.
Призыв к действию традиционно оформляют в виде кнопки:
Но в гуглокоде есть нюанс: код привязывается к кнопке локально, он виден в прикрепленном к таблице Apps Script. А вот привязанный к галке код может быть расположен не в embedded project, а в недоступном пользователю файле. Это особенность installable triggers.
Installable trigger работает с событием onEdit установки галки, а с кликом по кнопке так не работает. Остается загадкой почему гугол придумал, что нажатие на кнопку не обрабатывается как событие аналогично onEdit или onOpen.
Как было сказано выше, пользователь может получить все права на файл генератора счетов, в том числе доступ к коду в прикрепленном проекте. Это открывает дополнительные возможности для фрода. Поэтому код лучше защитить от свободного доступа. По этой причине вместо кнопки используется галка:
Установленная галка запускает процесс заполнения счета и договора по шаблону. Это продолжается несколько десятков секунд, в течение которых отображается прогресс выполнения задач.
После завершения процесса вид станет таким:
Безопасность для гугла не просто фишка, а полноценный фетиш. Поэтому просто кликнуть на ссылку не получится: ведь пользователь не знает куда ведет ссылка, а это чревато злоупотреблениями. Чтобы спасти пользователя от возможного обмана гугол показывает адрес ссылки при наведении на нее мышки. Вот уже по адресу можно кликать. А при наведении на адрес показывает его еще раз в темной теме .. ну, теперь вы точно знаете куда вас ведет эта ссылка.
К этому моменту оформленные документы отправлены почтой пользователю и продавцу в pdf. Перевод гуглодоков в pdf и отправка почтой отлично работает из коробки. Гугол даже выложил готовый код в документации.
В нашем примере почта будет отправлена только в том случае, если вы перешли в генератор счетов из интерфейса Робастика. При переходе в генератор по ссылке в этой статье гуглокод догадается, что пользователь ненастоящий, и почта не отправится. Поэтому можно тестировать его без оглядки на предполагаемый спам.
Из-за ограничений безопасности гугла нельзя просто отдать ссылку на скачивание data URI scheme. Причины гугол не раскрывает. Поэтому пользователь открывает по ссылке завершающий Web App embedded, где уже получает ссылку с содержащимся в ней счетом или договором в pdf.
Почему ссылка должна быть с data URI scheme, а не на обычный pdf-документ в GDrive? Потому что ссылка с data URI scheme вечная → ее можно загрузить и после удаления самого документа.
В заключение перечислим достоинства и недостатки, которые замечены в реализации онлайн калькулятора заказов и генератора счетов в концепции Excel-online в экосистеме Google.
Минусы:
-
непривычный интерфейс (предварительный и завершающий экраны, неудобство на мобильных устройствах, галка вместо кнопки, двоящаяся ссылка и т.д.)
-
медленно работает (анимация загрузки и индикация прогресса)
Плюсы:
-
не нужен сервер (serverless)
-
можно интегрировать на любом сайте на конструкторе с бесплатным хостингом
-
не требует высокой квалификации для верстки и программирования
-
возможна поддержка (и разработка) собственными силами
Вывод
Excel-онлайн является альтернативой при разработке используемого на сайте калькулятора заказов и генератора счетов.
Excel-онлайн подходит, когда внешний вид не критичен.
Excel-online полезен, когда:
1. необходимы изменения калькулятора (в том числе шаблонов договора и счета);
2. сложный или громоздкий калькулятор, разработка и поддержка которого в традиционном стеке затруднительна.
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Вас отпугнет оформление счета в Excel-онлайн?
62.5%
конечно отпугнет такая срамота
10
37.5%
если не люксовый товар/услуга, то не отпугнет
6
Проголосовали 16 пользователей.
Воздержались 2 пользователя.