Найти тему
Public Sub

Как решать математические выражения в VBA Excel, используя InputBox

InputBox - это специальная функция Visual Basic, которая отображает на экране диалоговое окно, в котором запрашивает пользовательский ввод. В дополнение к строке запроса функция InputBox поддерживает другие аргументы, которые вы иногда будете использовать.

Как это окно выглядит?

вот такая штука вылезет у Вас прямо на листе Excel после выполненных действий из этой статьи
вот такая штука вылезет у Вас прямо на листе Excel после выполненных действий из этой статьи

Напечатаем код и узнаем, из чего он состоит.

код с использованием InputBox
код с использованием InputBox

В коде нам встретилась полная объектная запись как листа, так и ячейки, которую я пояснил.

Она используется для уточнения места хранения информации. Если вы сталкиваетесь с большим количеством листов, вам стоит записывать именно так. Предварительно активируя нужный лист, так можно не писать.

Переменные будут строчного типа (String), так как это не числа.

Chr(10) мы используем для переноса строки.

Окно InputBox состоит из аргументов Promt (текст в окне), Title (заголовок), Default (значение в поле ввода).

Округляем до 3 знаков следующим образом.

один из способов округления
один из способов округления

Способов округления существует много, использовать все не считаю нужным. Запомните этот, и все будет отлично.

Нажимаем F5 и вылезает InputBox, в который можно ввести любое значение x, система присвоит его переменной и посчитает ответ, который выведет на лист Excel.

В данном коде, если вы заметили, я проделал лишнюю работу. Вначале с листа Excel присвоил значения иксу, а затем, заменил его с помощью InputBox. Значения с листа Excel в этом случае нам не понадобятся, на него мы просто вывели значения выражения.

Плохо что-то пояснил? Пишите комментарии и подробно расскажу про недорасказанное)

Читайте про решение выражения прямо на листе!

https://zen.yandex.ru/media/id/5e69c7cfd62d417b2fa8ec53/kak-reshat-matematicheskie-vyrajeniia-v-excel-i-vba-excel-na-liste-5e8dab012214ad2f4e0432e2