我真的无法弄清楚这一点。有人可以帮忙吗?
我有两张纸(纸张1和纸张2)。 表单1中有一列记录了所有团队规模 - 团队中有多少人。团队经理可以更改团队规模。例如,昨天团队1的团队规模可以为5,团队经理今天将团队规模改为7。
使用VBA我需要做的是根据团队规模列中的值更改在工作表2中插入行数。使用上面的示例,因为第1组的大小(比如第1页中的单元格E10)从5更改为7,将在工作表2的底部插入两行(7-5 = 2)。
我希望它有道理,我非常感谢任何帮助!非常感谢你。
答案 0 :(得分:0)
这样的事情应该有效。只需将此代码放在Sheet1
模块中:
Dim oldValue As String
'saving old value
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
oldValue = Target.Value
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
'if changing cell in third column
If Target.Column = 3 Then
'suppose teamname store in the same row as num of players and in column #2
teamName = Sheet1.Cells(Target.Row, 2)
'determining lastrow in sheet2
lastrow = Sheet2.Range("A" & Sheet2.Rows.Count).End(xlUp).Row
'insetr changing log
Sheet2.Range("A" & lastrow + 1) = teamName & ": old value " & oldValue
Sheet2.Range("A" & lastrow + 2) = teamName & ": new value " & Target.Value
End If
Application.EnableEvents = True
End Sub
希望有所帮助