引用未知值以自动填充新行

时间:2017-12-12 20:21:53

标签: excel vba excel-vba excel-formula

我试图在用户在列表中插入新行时找到解决方案,该行将被引用以自动在单独的列表中填充多行。当用户在左侧添加其他行时(例如资产编号),右侧的部分应自动填充。此外,资产属性和资产值重复,每个新资产编号相同。有什么想法吗? Before and after

(这是我的第一个问题,所以希望我做得对!感谢您的理解和耐心!)

2 个答案:

答案 0 :(得分:0)

您应该查看Workbook_SheetChange事件。当在工作表中进行更改时,它将运行放置在其中的任何代码。您可以在该函数中指定仅在左侧某个范围内发生更改时更新右侧的某个范围。

答案 1 :(得分:0)

在包含数据的工作表中(此处为名为Target的工作表 - 根据需要进行更改)具有以下代码:

Private Sub Worksheet_Change(ByVal Target As Range)

    If Not IsEmpty(Target) And Target.Column = 1 And Target.Row > 1 Then

        Dim wb As Workbook
        Dim ws As Worksheet

        Set wb = ThisWorkbook
        Set ws = wb.Worksheets("Target")

        Dim lastSourceRow As Long
        Dim lastTargetRow As Long

        lastSourceRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
        NextTargetRow = ws.Cells(ws.Rows.Count, "D").End(xlUp).Row + 1

        With ws.Cells(NextTargetRow, "D")

            .Resize(3, 1).Value = ws.Cells(lastSourceRow, "A")
            .Offset(, 1) = "Blue"
            .Offset(, 2) = "45"
            .Offset(1, 1) = "Big"
            .Offset(1, 2) = "20"
            .Offset(2, 1) = "Cold"
            .Offset(2, 2) = "5"

        End With

    End If

End Sub