首页 > 解决方案 > 在 Excel 中使用 VBA 将一列乘以存储为变量的常量

问题描述

我正在尝试在 Excel 中创建一个宏,它使用 Excel 中表格中的列进行一系列基本计算(乘法、除法等)。我的表如下所示:

在此处输入图像描述

我遇到的问题是,作为计算的一部分,用户需要指定一个常量“a”,该常量“a”将用于使用以下表达式获取名为“Z2”的列的值:“Z2”中的值 = 中的值“X1”列+“Y2”列中的值乘以常数“a”。为了实现这一点,我尝试使用以下代码:

Sub Macro_test()

Dim constant As Double
constant = InputBox("Insert constant 'a'")
Range("D1").Select
ActiveCell.FormulaR1C1 = "X1"
Range("D2").Select
ActiveCell.FormulaR1C1 = "=[@X]*SIN[@Y]"
Range("E1").Select
ActiveCell.FormulaR1C1 = "Y2"
Range("E2").Select
ActiveCell.FormulaR1C1 = "=[@X]*[@Y]*[@X1]"
Range("F1").Select
ActiveCell.FormulaR1C1 = "Z2"
Range("F2").Select
ActiveCell.FormulaR1C1 = "=[@X1]+[@Y2]*constant"

一切正常,但涉及常量的操作不起作用。知道我在做什么错吗?在此先感谢您的帮助。

标签: excelvbaexcel-formula

解决方案


推荐阅读