首页 > 解决方案 > 将新行插入工作表 1 并复制值时,如何自动将新行插入工作表 2?

问题描述

如何执行以下操作:我在一个工作表中有 2 张工作表,即;工作表 1 和工作表 2。现在我想在工作表 1 中插入一个新行并填充该单元格,当我插入这一行时,我想将同一行自动插入工作表 2 但没有一些列。我用谷歌搜索并搜索了许多论坛和网站,但找不到任何工作。

表 1

表 1

表 2

表 2

标签: excelvba

解决方案


您可以在表 1 中使用以下代码。

Option Explicit
Dim Old_lines As Long, New_Lines As Long, Row_Number As Long
Dim PrNo As String, PrNa As String, R2 As String, R3 As String, R5 As String

Private Sub Worksheet_Change(ByVal Target As Range)

    With ThisWorkbook.Worksheets("Sheet1")

        New_Lines = .Cells(.Rows.Count, "A").End(xlUp).Row

        If Old_lines < New_Lines Then

            With Worksheets("Sheet2")
                .Rows(Row_Number).EntireRow.Insert
                .Range("A" & Row_Number).Formula = "=Sheet1!A" & Row_Number
                .Range("B" & Row_Number).Formula = "=Sheet1!B" & Row_Number
                .Range("C" & Row_Number).Formula = "=Sheet1!D" & Row_Number
                .Range("D" & Row_Number).Formula = "=Sheet1!E" & Row_Number
                .Range("E" & Row_Number).Formula = "=Sheet1!G" & Row_Number

            End With

        End If

    End With

End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    With ThisWorkbook.Worksheets("Sheet1")

        Old_lines = .Cells(.Rows.Count, "A").End(xlUp).Row
        Row_Number = Target.Row

    End With

End Sub

推荐阅读