Excel 当列中的值更改时更新特定单元格

Excel 当列中的值更改时更新特定单元格,excel,vba,Excel,Vba,我的任务是为一列数据创建一种方法,以更新底部单元格的最新条目。更具体地说,今年每个月都要输入贷款组合金额,最新的条目也需要出现在列的底部。这是我最初的想法,但这对底部之前的最后一个条目不起作用 Private Sub Worksheet_Change(ByVal Target As Range) xC = 0 yC = 7 If (Target.Column = 3) Then Do prevInt = currentInt currentInt = Sheet1.Cells(yC,

我的任务是为一列数据创建一种方法,以更新底部单元格的最新条目。更具体地说,今年每个月都要输入贷款组合金额,最新的条目也需要出现在列的底部。这是我最初的想法,但这对底部之前的最后一个条目不起作用

Private Sub Worksheet_Change(ByVal Target As Range)

xC = 0

yC = 7

If (Target.Column = 3) Then

Do

prevInt = currentInt

currentInt = Sheet1.Cells(yC, 3).Value

If (currentInt = 0) Then

Sheet1.Cells(19, 3).Value = prevInt

xC = 1

End If

yC = yC + 1

    Loop Until xC = 1

    End If

End Sub

我假设当前月份总数下面的单元格将始终为空,除非是12月。否则我不知道你怎么知道哪一个是最新的:

Public Sub SetTotalCellValue()
Const portfolioColumn As Integer = 3
Const endRow As Integer = 14 'row of "total" cell

Dim sheet As Worksheet
Dim rowCount As Integer
Dim val As Object

rowCount = 2 'start at January, skip header row

'Set sheet = some sheet

'find last empty cell
For a = 1 To endRow
If sheet.Cells(a, portfolioColumn).Value = Empty Then
   sheet.Cells(endRow, portfolioColumn).Value = sheet.Cells(a - 1, portfolioColumn).Value
Exit For
ElseIf a = endRow - 1 Then
  sheet.Cells(endRow, portfolioColumn).Value = sheet.Cells(a, portfolioColumn).Value
Exit For
End If

Next a

End Sub

你能用一个链接的单元格吗?或者追加的投资组合金额不是每个月都会被覆盖吗?它是从一月到十二月的每个月的一列单元格,当最新的月份金额输入到相应的单元格中时,它也需要显示在底部。我对您实际要做的事有一个基本的了解,但是在我发布之前,我可以看看您的投资组合的快照吗这样我才能得到正确的参考资料?