При написании макроса в программе эксель, часто приходиться использовать переменные для расчета каких-либо данных, так как с этой несложной процедурой возникают сложности, то давайте рассмотрим, какие можно использовать варианты.
Первый вариант. Присвоить значение переменой внутри макроса, обычно такой способ используют для логических функций. Например, изначально создаю логическую переменную, которой присваиваю статус false, потом когда работает макрос, он проверяет определенное значение в ячейке, если оно выполняется, то присваиваем переменной true, чтобы выполнилось определенное условие внутри макроса. Вот простой макрос:
Суть макроса простая, мы изначально переменно BROF присвоили значение «Ложь» внутри макроса, чтобы вот эта часть выполнялась при определенных условиях:
If BROF = True Then BDR.Cells(1, 2) = "Правда"
Т.е. она срабатывает только при условии не пустой ячейки «А1», если она пустая макрос ничего не делает, а если есть цифра, то пишет в ячейке «А2» слово «Правда».
Второй вариант. Присвоит значение в VBA из рабочего листа. В этом случае пишем простой макрос, в котором переменной List присваивается значение из ячейки «А1», а потом в ячейку А3 мы записываем значение List умноженное на три.
Таким образом, присвоить значение переменной в vba через обычное равенство, при чем в правой части формулы может быть:
- Логическая переменная BROF = False;
- Значение из ячейки List = BDR.Cells(1, 1);
- Число List = 1.