gpt4 book ai didi

vba - 如何执行while循环,将公式保留在单元格中并应用于整行? Excel

转载 作者:行者123 更新时间:2023-12-04 20:33:25 26 4
gpt4 key购买 nike

我正在尝试使用 Excel 和 Visual Basic 创建一个宏,我可以在其中执行一个单元格和另一个包含公式的单元格之间的加法。我需要执行此添加,直到具有公式的单元格达到 0。

假设,如果:

C2 = 10,000
H2(有公式的那个)= -40,000

我必须将 H2 中的 40,000 加到 C2 中,这样我才能得到 50,000 并且 H2 达到 0。由于其公式,H2 将达到 0。

我试图通过使用 While 循环来实现这一点。然而,这个循环陷入无限状态,我的 H2 单元格也失去了它的公式。

这是我的代码:

Dim n1 As Double
Dim n2 As Double

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
n1 = Cells(2, 8).Value
n2 = Cells(2, 3).Value

Do While n1 <> 0
n2 = n2 + (n1 * -1)
Cells(2, 3).Value = n2
n1 = Cells(2, 8).Value
Loop
End Sub

此外,我需要应用这个相同的方法,但在它们具有值的每一行 C 和 H 上。

最佳答案

希望这是您正在寻找的...

Dim n1 As Double
Dim n2 As Double

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim lastrow, i As Variant
lastrow = Range("C" & Rows.Count).End(xlUp).Row
For i = 2 To lastrow
n1 = Cells(i, 8).Value
n2 = Cells(i, 3).Value
Do While n1 <> 0
n2 = n2 + (n1 * -1)
Cells(i, 3).Value = n2
n1 = Cells(i, 8).Value
Loop
Next i
End Sub

关于vba - 如何执行while循环,将公式保留在单元格中并应用于整行? Excel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46313537/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com