excel - VBA excel 方程继续沿列向下延伸

标签 excel vba if-statement sum equation

我正在尝试写一个在列中变化的方程,一般方程是相同的。

即有 A、B 和 C 列,方程在 C 列中显示结果。 一般方程 = C1(初始结果)+(B3+B1)/2 *(A3-A1) 将在下一行更新为

=C2+(B4+B2)/2*(A4-A1) 依此类推,沿着列向下移动

除此之外,当 A 列中没有值时,我在 C 列中添加了 *,我到目前为止编写的代码显示在下面,我真的希望有人能帮助我,谢谢

''''row number = row number + 1 on a loop
Worksheets("Sheet3").Cells(19, 1) = 0 '''this is A1=0
Worksheets("Sheet3").Cells(19, 3) = 0 '''This is C1 = 0
If Worksheets("Sheet3").Cells(19 + row_number, 1) = "" Then 
''''if cell in A column is blank show * in column C
Usui_wear_depth = "*"
Else: Usui_wear_depth = Application.WorksheetFunction.Sum(Sheet3.[C22] + (([B25] + [B22]) / 2) *
([A25] - [A21])) ''' this is the General equation
End If
Worksheets("Sheet3").Cells(19 + row_number, 6) = Usui_wear_depth

最佳答案

这可以轻松地作为单个公式完成,无需 VBA:

=IF(ISBLANK(A3),"*",C1+(B3+B1)/2*(A3-$A$1))

如果您只是将此公式复制到 C 列的单元格中,它将按照您的描述进行更改。

我将对 A1 的引用设为绝对引用,因为它是方程中唯一一个从第一个版本到第二个版本没有改变的引用。您还可以决定应检查 A 列中的哪个单元格以显示“*” - 我从您的问题中不清楚这一点。希望这有帮助!

关于excel - VBA excel 方程继续沿列向下延伸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25059770/

相关文章:

vba - 添加新 Excel 工作表时出现错误 400

excel - 使用 Excel VBA 进行网页抓取

excel - 是否可以将一定范围的变体转储到工作表中?

excel - Vba用按钮上下移动行,第二行除外

ruby - 如何停止这个在 Ruby 中被错误初始化的方法?

java - 使用 Java 和 Apache poi 从 .xls 或 .xlsx 文件中读取内容

java - 如何在java和selenium中从excel读取浮点值

java - 服务器日志记录附加到 Excel 工作表

r - 如何使用条件如果在R中更改矩阵条目

java - "If"语句,常量相等